面向对象(类,方法重载,this关键字)/(面向对象三大特征:封装,继承,多态)
类和对象
- 类:是一组相关属性和行为的集合。(属性:该事物的状态信息;行为:该事物能够做什么行为动作)
- 类与对象的关系:
. 类是对一类事物的描述,是抽象;
. 对象是一类事物的实例,具体存在的东西
类是对象的模板,对象是类的实体(类可以对应多个对象) - 成员变量:对应事物的属性, 成员方法:对应事物的方法
- 定义类:就是定义类的方法,其中包括成员变量和成员方法
- 成员变量:在类中,方法外。
- 成员方法:和以前定义方法几乎一样,只不过把static去掉。
public class Student{
//成员变量
String name;
int age;
//成员方法
//学习的方法
public void study() {
System.out.println("好好学习,天天向上");
}
//吃饭的方法
public void eat() {
System.out.println("学习饿了要吃饭");
}
}
对象的使用
对象的使用格式
创建对象:
类名 对象名 = new 类名();
使用对象访问类中的成员:
对象名.成员变量;
对象名.成员方法():
public class Test01_Student {
public static void main(Strinng[] args){
//创建对象格式:类名 对象名 = new 类名();
Student s = new Student();
System.out.println("s:"+s);
//直接输出成员变量值
System.out.println("姓名"+s.name);
System.out.println("年龄"+s.age);
System.out.println("---------");
//给成员变量赋值
s.name = "赵丽颖";
s.age = 18;
//再次输出成员变量的值
System.out.println("姓名"+s.name);
System.out.println("年龄"+s.age);
System.out.println("---------");
//调用成员方法
s.study();//"好好学习,天天向上
s.eat();//"学习饿了要吃饭"
}
}
成员变量的默认值
数据类型 | 默认值 | |
---|---|---|
基本类型 | 整型(byte,short,int,long) | 0 |
浮点型(float,double) | 0.0 | |
字符(char) | ‘\u0000’ | |
布尔(boolean) | false | |
引用类型 | 数组,类,接口 | null |
成员变量与局部变量区别:
1 在类中位置不同(成员变量:类中,方法外;局部变量:方法中或者方法声明上(形式参数)
2.用范围不同(成员变量:类中;局部变量:方法中)
3 初始化值不同(成员变量:有默认值,局部变量:没有默认值,必须定义,赋值,最后使用)
4 在内存中的位置不同(成员变量:堆内存,局部变量:栈内存)
5 生命周期不同(成员变量:随着对象的创建而存在,随着对象的消失而消失:局部变量:随着方法的调用而存在,方法的调用完消失)