1 什么是类? 什么是对象?
==现实生活中是由很多很多对象组成,基于对象抽出了类
==:软件中真实存在的单个个体/东西
类: 类别/类型,代表一个类个体
==类是对象的莫子,对象是类的具体的实例
类中可以包含
= 对象的属性/特征------------成员变量
= 对象的行为/动作------------方法
=一个类可以创建多个对象
2 如何创建类? 如何创建对象? 如何访问成员?
public class Student { //Student类就是我们自己造的一种引用类型
//成员变量
String name;
int age;
String address;
//方法
void study(){
System.out.println(name+"在学习...");
}
void sayHi(){
System.out.println("大家好,我叫"+name+",今年"+age+"岁了,家住"+address);
}
}
public class StudentTest {
public static void main(String[] args){
//创建一个学生对象
Student zs = new Student();
//给成员变量赋值
zs.name = "zhangsan";
zs.age = 25;
zs.address = "河北廊坊";
//调用方法
zs.study();
zs.sayHi();
Student ls = new Student();
ls.name = "lisi";
ls.age = 24;
ls.address = "黑龙江佳木斯";
ls.study();
ls.sayHi();
//1)创建了一个学生对象
//2)给所有成员变量赋默认值
Student ww = new Student();
ww.study();
ww.sayHi();
}
}
二 方法的重载(overload/overloading):----------更加方便用户的访问
==发生在同一类中,方法名相同, 参数列表不同
==编译器在遍译时会根据方法的签名自动绑定方法
//重载的演示
public class OverloadDemo {
public static void main(String[] args) {
Aoo o = new Aoo();
o.show(); //编译器根据方法的签名自动绑定方法
o.show("zhangsan");
o.show(25);
o.show("zhangsan",25);
o.show(25,"zhangsan");
}
}
class Aoo{
void show(){}
void show(String name){}
void show(int age){}
void show(String name,int age){}
void show(int age,String name){}
//int show(){ return 1;} //编译错误,重载与返回值类型无关
//void show(String address){} //编译错误,重载与参数名称无关
}
补充:
-
高质量的代码:---------------------以后的目标、拿年薪
- 复用性好、扩展性好、维护性好、可移植性好\健壮性好、可读性好、效率好......
-
默认值规则:
byte,short,int,long,char-------------0
float,double-------------------------0.0
boolean------------------------------false
引用类型------------------------------null
-
//若想访问对象,需要通过引用zs
引用
数据类型 引用类型变量 指向 对象
Student zs = new Student(); 4方法的签名:方法名+参数列表