学习一门语言,以它懂的方式 向这个世界问个好。
作业要求:
- 打印Hello World
- 要求掌握 定义类、属性、方法
- 要求掌握 基础数据类型 、定义和赋值方式
- 要求掌握修饰符含义
- 要求代码有注释
- 要求掌握 if 、while、for
搭建开发环境
百度云:http://pan.baidu.com/s/1o6Rp4Oa
- 安装JDK
提供的是jdk-7u79-windows-x64,按照提示一步一步操作即可 - Eclipse安装
Eclipse统一用我配置好的版本Mars.1 Release (4.5.1) (附带各种代码检查工具)
使用方法:
- 获取eclipse For Dev V4.5.zip
- 解压缩到 D:\devTools\目录下
- 双击 D:\devTools\eclipse For Dev V4.5\eclipse.exe
- 设置工作目录 D:\workspace
熟悉Eclipse
- 会切换到JAVA视图
window-Perspective-Open Perspective-Other-Java
- 打开Package Explorer
window-show view -Package Explorer
开始编程
1 新建项目
在Package Explorer窗口中,右键-New-Java Project
在Project name 中输入项目名:Hello_New_World
Use a project specific JRE :jdk1.7.0_79
点击 Finish
2 新建包名
选中Hello_New_World-右键-New-Package
在Name 输入:pers.qingqian.study.basic
补充知识--包名命名规则
一般公司会将互联网上的域名称作为自己程序包的唯一前缀:如:com.sun.swt.(公司名.项目名.模块)
当前因为是个人项目,供学习,可分享,copyright主要属于个人。
Tips1. java的包名都是由小写单词组成的
Tips2. 看包名就知道这个包是做什么事情,易阅读、易查找
3 新建类
在包名:pers.qingqian.study.basic,右键-New-Class
在Name 输入:HelloWorld
勾选:public static void main(String[] args)
点击 Finish
/**
* Project Name:Hello_New_World
* File Name:HelloWorld.java
* Package Name:pers.qingqian.study.basic
* Date:2016年1月16日上午11:32:50
* Copyright (c) 2016, qingqian All Rights Reserved.
*
*/
package pers.qingqian.study.basic;
/**
* ClassName:HelloWorld <br/>
* Function: 基础练习类. <br/>
* Reason: study java . <br/>
* Date: 2016年1月16日 上午11:32:50 <br/>
*
* @author qingqian
* @version
* @see
*/
public class HelloWorld {
/**
*
* main:(这里用一句话描述这个方法的作用). <br/>
* TODO(这里描述这个方法适用条件 – 可选).<br/>
* TODO(这里描述这个方法的执行流程 – 可选).<br/>
*
* @author qingqian
* @param args
*/
public static void main(String[] args) {
}
}
```
>补充知识
* main()方法是Java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法。
方法的名字必须是main,方法必须是public static void 类型的,方法必须接收一个字符串数组的参数。
* String[] args 字符串参数数组作用是接收命令行输入参数的,命令行的参数之间用空格隔开
* 修饰符public、protect、default、private --面向对象的封装性,所以我们要适用他们尽可能的让权限降到最低,从而安全性提高。
| 访问权限 | 类 | 包 | 子类 | 其他包|
| ----- |:---:| ---:|----:|----:|
| public | ∨ | ∨ | ∨ | ∨|
| protect | ∨ | ∨ | ∨ | ×|
| default | ∨ | ∨ | × | ×|
|private | ∨ | × | × | ×|
使用例子:
在HelloWorld.java 右键-Run As-Run Configurations
![6 arg.png](http://upload-images.jianshu.io/upload_images/1211247-44d78057148f3b46.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
代码
`public static void main(String[] args) {
for (String str : args) {
System.out.println(str);
}
}`
执行结果
![7 arg result.png](http://upload-images.jianshu.io/upload_images/1211247-0684b6ce0216f0f3.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
4 写代码
和这个世界打个招呼
无返回参数的方法
```
public class HelloWorld {
/**
* main 函数
*
* @author qingqian
* @param args
*/
public static void main(String[] args) {
String str = "Hello world, I'm Qingqian";
HelloWorld helloWorld = new HelloWorld();
helloWorld.printStr(str);
}
/**
* 打印字符串 <br/>
*
* @author qingqian
* @param str
*/
public void printStr(String str) {
System.out.println(str);
}
/**
* 打印数字 <br/>
*
* @author qingqian
* @param num
*/
public void printNum(int num) {
System.out.println(num);
}
}
```
有返回参数的方法,做个简单的加法,妈妈再写不用担心我不会数数啦。
```
/**
*
* calScore:计算一个人的总分. <br/>
*
* @author qingqian
* @param math
* @param english
* @param chinese
* @return
*/
public int calScore(int math, int english, int chinese) {
int sum;
sum = math + english + chinese;
return sum;
}
```
基本逻辑处理if
```
public final static int PASSLINE = 60;
public final static int MIDDLElINE = 75;
public final static int GOODLINE = 80;
public final static int EXCELLENTLINE = 90;
public final static String EXCELLENT = "A ,Excellent";
public final static String GOOD = "B ,Good";
public final static String MIDDLE = "C ,Middle";
public final static String PASS = "D ,PASS";
public final static String FAIL = "F ,Fail";
/**
* confirmLevel: 判断成绩的等级. <br/>
*
* @author qingqian
* @param score
* @return
*/
public String confirmLevel(int score) {
if (score > EXCELLENTLINE) {
return EXCELLENT;
} else if (score > GOODLINE) {
return GOOD;
} else if (score > MIDDLElINE) {
return MIDDLE;
} else if (score > PASSLINE) {
return PASS;
} else {
return FAIL;
}
}
```
基本逻辑处理for
```
/**
*
* calAllScores:计算一门的总分 <br/>
*
* @author qingqian
* @param scores
* @return
*/
public static int calAllScores(int[] scores) {
int sum = 0;
for (int i = 0; i < scores.length; i++) {
sum = sum + scores[i];
}
return sum;
}
```
基本逻辑处理while
```
/**
*
* calPassAndFail:统计及格、不及格的人数各多少. <br/>
*
* @author qingqian
* @param scores
* @return
*/
public static int[] calPassAndFail(int[] scores) {
int[] sum = new int[2];
int sumPass = 0;
int sumFail = 0;
int i = 0;
while (i < scores.length) {
if (scores[i] > PASSLINE) {
sumPass++;
} else {
sumFail++;
}
i++;
}
sum[0] = sumPass;
sum[1] = sumFail;
return sum;
}
```
嗯,第一周的课程就到这里,谢谢BF的指导,从他说的不是main方法打印HelloWorld 而是要用 调用对象的方法,我才想到真正的程序是如何work的。
谢谢YZ,她告诉我,我不知道 她不知道点在哪里,我只顾说自己的逻辑,所以她理解我说的,而我不知道她为什么不懂,无法解决她的问题。
谢谢小组中其他一起学习的童鞋。