Java学习 Day8

1.JavaDoc文档的生成:

选中Java工程-》右键export->Java目录下的Javadoc->选中生成的目地地-》vm options下

写-encoding utf-8 -charset utf-8完成就可。

2.面向过程:将事情分成多个步骤,然后按照顺序一步一步完成。解决简单的问题。

  面向对象:将事情的参与实体找出来,然后让对应的实体去做。解决复杂大型的问题。

  面向对象和面向过程它们之间是相辅相成。

“我要吃龙虾”

面向过程:买龙虾-》回家洗龙虾-》烹饪龙虾-》自己吃龙虾

面向对象:委托一个人买龙虾-》委托另一个人洗龙虾-》委托一个人烹饪龙虾-》自己吃龙虾

开培训机构:

面向过程:老板自己招生-》咨询-》收费-》上课-》就业。

面向对象:让招生部的老师去招生-》让咨询老师去咨询-》让财务收费-》让讲师去上课-》让就业老师去负责学生就业。(老板负责数钱,监督各部门做事)

3.Java是一种纯面向对象的语言。面向对象的语言有三大特征:封装,继承,多态。

4.对象:用来描述客观事物的实体。(可以用具体的数据来描述)

  类:由一组相同属性和方法的对象组成的集合。

  类是对象的抽象也是对象的类型,对象是类的一个具体实例(代表)。

  属性:静态特征。

  方法:动态特征。

5.类: Java最基本的单位是类。

类的语法:

访问修饰符 class 类名{

访问修饰符 数据类型 变量名;

访问修饰符  返回值类型 方法名(参数列数){

方法体;

}

}

注:类中的属性可以有0个到多个。类中的方法也可以有0个到多个。

6.对象:

创建对象的语法:类名 对象名=new 类名();

调用属性的语法:  对象名.属性名;

调用方法的语法:

a.在同一个类中调用方法:方法名();

b.在不同类中:对象名.方法名();

7.this:指代当前对象。(谁调用就指代谁)。

this可以调用成员属性和方法。

8.封装:隐藏内部细节,提供对外的访问方式。保证了数据的安全性。

(1)对功能的封装(实际上就是方法);

(2)对数据的封装:私有化属性,给属性公有的读取和写入值的方法供外界用。

eg:/**

* 将年龄属性私有化

*/

private int age;

/**

* 读取age属性的方法

* @return int

*/

public int getAge() {

return age;

}

/**

* 给age属性写入值的方法

* @return int

*/

public void setAge(int age) {

if(age>=0) {

this.age = age;

}else {

this.age=0;

System.out.println("你输入的年龄不合法,重置为0");

}

}

9.构造方法:本身也是一种方法;但是他没方法返回值;方法与类名相同。

      作用:构造方法就是用来New 对象;初始化对象属性。

  (1)构造方法自己不定义,系统会自动给每一个类分配一个默认无参数空构造方法。

如果自己在类定义了构造方法,系统就不会给这个类分配方法。

(为了编程习惯用法,一般只给类声明了构造方法,就一定要给类声明一个无参构造。)

  (2)构造方法是在New对象时自动调用。

  (3)构造方法之间的相互调用,只能用this(参数列表);用this调用构造方法时,this(参数列表);只能写在构造方法的第一句。

10.变量:在同个作用域中变量不可以同名。

  在同一个类中,如果成员变量和局部变量同名,局部变量的优先级更高。(就近原则)

  成员变量:(1)在类中直接声明的变量就叫成员变量;

  (2)作用域:在整个类中。

  (3)生命周期:在创建对象到对象回收时。

  (4)成员变量不给初值时,系统会默认分配初值。

  (5)在内存中的位置不同

  局部变量:(1)在方法中声明的变量就局部变量;

  (2)作用域:在声明变量所在的大括号的范围内。

  (3)生命周期:在声明的大括号执行到结束时。

  (4)局部变量不给初值时,系统不会默认分配初值。

  (5)在内存中的位置不同

11.用面向对象思维做题的步骤:

(1)找出题目中的类

(2)找出类的属性(只找与解决问题有关的属性)

(3)找出类的方法。

你可能感兴趣的:(Java学习 Day8)