/**
* 这是一个学生类
*/
class Student{
/*
成员变量都用private修饰
被private修饰的成员变量只能在本类中使用,不能被其他类直接调用
*/
private String name;
private int age;
/*
static可以修饰成员变量和成员方法
静态的特点:
A:随着类的加载而加载
B:优先于对象存在
C:被类的所有对象共享
D:可以通过类名调用
被static修饰的变量,只能被静态方法调用;并且被所有对象所共享
*/
private static char sex = '女';
//代码块
{
System.out.println(name+"***"+age+"***"+sex);
name = "张曼玉";
age = 18;
System.out.println(name+"***"+age+"***"+sex);
}
//构造方法
public Student(){
//System.out.println(name+"***"+age+"***"+sex);
}
//构造方法的重载
public Student(String name,int age,char sex){
/*
this关键字定义在方法中,那个对象调用该方法,this就代表谁!
除了静态方法外,所有的方法中都有隐含的有一个this引用
*/
this.name = name;
this.age = age;
this.sex = sex;
//System.out.println(name+"***"+age+"***"+sex);
}
//学生学习的方法
public void study(){
System.out.println(name+"***"+sex+"***"+age);
}
/*
学生展示的方法
静态方法:静态方法是随着类的加载而加载的,调用时用类名.方法名调用
*/
public static void show(){
//System.out.println(name+"****"+sex);
System.out.println(sex);
}
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
public int getAge(){
return age;
}
public void setAge(int age){
this.age = age;
}
public char getSex(){
return sex;
}
public void setSex(char sex){
this.sex = sex;
}
}
/**
* 这是测试类
*/
class StudentTest{
public static void main(String[] args){
//创建一个学生类的对象
Student s = new Student();
s.setName("林青霞");
s.setAge(26);
s.study();
/*
静态方法推荐使用类名.方法名
实际开发中,静态方法都是类名.方法名调用;
因为被static修饰的成员变量或成员方法是随着类的加载而加载的,是类的一部分;
*/
Student.show();
}
}
|
-
捕获.PNG
(47.14 KB, 下载次数: 5)
运行结果
-
捕获1.PNG
(108.99 KB, 下载次数: 2)
创建一个对象时,在内存中的做的事情
|