类:用来描述一类具有相同特征和相同行为的对象。
-
Java中用class关键字来描述类
- 成员属性:对应的就是事物的属性
- 成员方法:对象事物的行为
- 类的定义:
public class 类名{ }
-
定义类:就是定义类的成员,包括成员变量和成员方法
-
类的成员: 成员变量:和之前定义的变量几乎时一样的,只不过位置发生了改变,成员变量位于类中,任何方法之外。成员方法:和之前定义的方法几乎是一样的,只不过把static关键字去掉
-
类和对象的关系:类是对象的例化
-
对象
对象(Object)是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。创建对象
使用对象:调用成员变量:
对象名.成员变量;
调用成员方法:
对象名.方法名;
成员变量都有默认值,所以在声明成员变量时,可以不用初始化
数据类型 默认值
byte 0
short 0
int 0
long 0
float 0.0
double 0.0
boolean false
char 空字符
引用类型 null
-
全局变量(成员变量) 定义在方法的外部,类的内部。使用范围是整个类 不需要初始值 存储在堆内存中
-
局部变量
定义在方法的内部或者某一个语句块的内部,适用范围仅限于方法内或者语句块内
必须有初始值
存储在栈内存中
成员方法
语法:访问修饰符 返回值类型 方法名称{ 方法体 }
-
访问修饰符:public
-
返回值类型由返回值决定
-
成员变量可以直接在成员方法中使用,但是main方法中如果调用成员变量和方法必须通过对象.属性名\方法名(参数列表)的形式来调用
-
成员方法之间的调用,直接写方法名
构造方法
对象一建立就会调用构造方法,可以创建对象,给成员变量(属性)初始化。
方法名和类名相同
没有返回值和void,没有return
不能被static等关键字修饰
可以方法重
当一个类中没有写构造方法时,系统会默认给该类一个默认的无参构造方法。当自己定义构造方法后默认的构造方法就不存在了。
public class Animal {
String name;
int age;
public Animal(){
System.out.println("------无参的构造方法------");
name = "动物";
age = 0;
}
public Animal(String name,int age){
System.out.println("------有参的构造方法------");
this.name = name;
this.age = age;
}
public static void main(String[] args) {
//创建对象
Animal a1 = new Animal();
System.out.println(a1.name+","+a1.age);
Animal a2 = new Animal("兔子",2);
System.out.println(a2.name+","+a2.age);
}
}
this关键字
this代表它所在方法所属对象的引用。哪个对象调用的this所在的方法,this就代表哪个对象。
-
在没有static关键字修饰的方法中使用
-
this关键的字用来区分成员变量和局部变量同名的情况:
public class Student{ String name; int age; int classNum; public Student(String name,int age,int classNum){ this.name = name; this.age = age; this.classNum = classNum; } public static void main(String[] args){ Student s1 = new Student("张三",18,1); System.out.println(s1.name); } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)