1:面向对象
(1)面向过程 强调过程,执行者
(2)面向对象 强调对象,指挥者
(3)面向对象思想的特点
A:它是一种更符合人们思考习惯的思想
B:它是复杂的内容简单化
C:它是我们从执行者变成了指挥者
(4)面向对象的特点
A:封装
B:继承
C:多态
2:类和对象
(1)类是对现实世界中事物的描述(属性和方法)
(2)对象是现实世界中实际存在具体的个
把事物转换成java语言描述。而java语言最基本的单位就是类。
把事物对应的属性和行为分别替换成java语言中的成员变量和成员方法。
举例:描述汽车
class Car
{
String color;//属性
int size;
String type;
public void run(){}//方法
public void stop(){}
}
3:局部变量和成员变量
(1)作用范围
局部变量:方法内
成员变量:类中,对整个类有效
(2)存储空间
局部变量:栈内存
成员变量:堆内存
(3)初始化值
局部变量:必须手动给值
成员变量:默认初始化值。
4:匿名对象的使用
(1)当对对象中的功能只执行一次的时候使用。否则,请你使用实名制对象。
Person p = new Person();
p.show();
p.show();
p.print();
new Person().show();
new Person().show();
new Person().print();
(2)用于作为实际参数进行传递。
method(new Person());
public static void method(Person p){}
5:封装
(1)封装的好处:便于重复使用,安全性高。
(2)private权限修饰符
class Demo
{
private int age;
//属性私有化后,我们可以对设置的值进行判断
public void setAge(int age)
{
if(age>100 || age<0)
{
System.out.println(“年龄有误”);
}
else
{
this.age = age;
}
}
public int getAge()
{
return age;
}
}
6:构造函数
(1)用途:用于创建对象,也有可能要进行初始化。
A:格式 类名(){//code}
B:Person(){}
(2)特点 如果你没有建立构造函数,系统会自动建立一个空参构造,如果你建立了构造函数,系统就不会再建立构造函数了。
(3)重载构造函数
A:Person(){}
B:Person(String name){}
C:Person(int age){}
D:Person(String name,int age){}
注意:构造还可以用于给属性赋值。
7:this关键字
(1)代表当前对象的引用。使用的时候,谁调用方法,this就代表谁。
(2)this的使用:
A:用于局部变量隐藏成员变量。
B:写功能的时候,可能用到this。比如,compare()
C:构造函数中使用this
**this() 必须放在第一行。
举例:
Person(String name)
{
this.name = name;
}
Person(String name,int age)
{
this(name);//是找带一个字符串类型参数的构造方法
this.age = age;
}
end