抽象:是由众多的事物中抽取共同的,本质的特征,而舍弃其非本质的特征的运程------在JAVA中就是形成类的过程。
步骤:1.找出种类
2.找出属性
3.找出行为
Java就是一门编程语言,利用面向对象思想符合人们的思维习惯,大大提高了大型软件的设计和开发效率。
类(Class)和对象(Object)是面向对象的两个核心概念。
类:对某一类事物的描述,是抽象的,概念上的定义
对象:是实际存在的,具体的事物个体,类和对象的关系就好比摸具和制作的物品的关系,因此一个类可以创多个对象。
对象使用特点:1.通过构造方法创建对象,如“Army army = new Army();”
2.通过对象名.属性名的方式调用属性,如“hero.name="超人";”
3.通过对象名,方法名的方式调用方法,如“army.print();”
Java中有常量,使用final关键字修饰,通常常量名都大写。
类名,属性名,方法名及常量的命名规范:
1.类名由一个或几个单词组成,每个单词的第一个字母大写,如Hero,Army
2.属性名和方法名由一个或几个单词组成,第一个首字母小写,其他字母大写,如stuName,printLn()
3.常量名由一个或几个单词组成,所有字母大写,如SEX-MAN
方法重载判断:
必须在同一个类里
方法名相同
参数列表(方法形参的个数或参数类型)不同
与方法返回值和方法修饰符没有任何关系
封装
属性私有化,被private修饰,对外只提供set/fet方法
属性私有:private String name = "Car";
private double model = 4.5;
private String colour = "Black";
set/get方法:public String getName(){
return name;
}
public void setName(string name){
this.name = name;
}
使用this调用成员变量,解决成员变量和局部变量的同名冲突
public void setName(String name){
this.name=name; //成员变量和局部变量同名,必须用this
}
public void setName(String n){
name=m; //成员变量和局部变量不同名,this可以省略
}
使用this调用成员方法
public void work(int n){
health=health - n;
this.print(); //this可以省略,直接调用print();
}
使用this调用重载的构造方法,只能在构造方法中使用,必须是构造方法的第一条语句
public Army(String name,String birth){
this(name,birth);
this.name = name;
this.name = birth;
}
注:this只能调用实例变量,实例方法和构造方法。this不能调用类变量和类方法,也不能调用局部变量