Java 学习和实践笔记(16):类的理解以及初始值

类,英文名叫class。基本上对应的就是语言里的名词。

比如,房子、人、树、花、汽车等等,这些名词,这些可以定义成类。

以房子为例,作为一个房子,它一定有相应的属性,比如房顶、墙、门、窗等等,把这些属性当作房子这个表格(如前所学,类就对应表格)的列。

这样,就使用这个房子表格,就可以描述很多种具有不同数量的门、窗等的房子了。

具体到某一行,就对应一个具体的描述好的房子,这就是房子这个类里的一个对象,又叫实例,即object或者instance。

所以,一个类,就是一个描述一些共有特征的模板。比如这个房子表格一样。它就是一个模板。模板内的属性的具体内容可以变(比如在窗的这一列,不同行,可以有不同的数量的窗),但是这个模板一旦定义好就不会变。

总结:
类可以看成一类对象的模板,对象可以看成该类的一个具体实例。
类是用于描述同一类型的对象的一个抽象概念,类中定义了这一类对象所应具有的共
同的属性、方法。

 

public class Student {
    int id;
    int age;
    String name;

    public void study(){
        System.out.println("正在学习");
    }
    public void kickball(){
        System.out.println("踢球中");
    }

    public static void main(String[] args){
        Student s1 = new Student();
        System.out.println(s1.id);
        System.out.println(s1.age);
        System.out.println(s1.name);
        s1.id=1;
        s1.name="jason";
        System.out.println(s1.id);
        System.out.println(s1.name);
        s1.study();
        s1.kickball();

    }

}

运行结果:
0
0
null
1
jason
正在学习
踢球中

上面就是先创建一个学生类,然后创建一个类的对象学生1(S1)的过程。这其中特别值得注意是语句:  Student s1 = new Student();

创建一个学生类,相当于创建了一个学生表,这个表只有表头,也就是只有各列的列名(属性),表本身是空的,没有行,也就说是还没有对象。

用这个new语句创造了一个行,也就是创造了一个对象,这很容易理解。

上面这段代码在内存中具体是怎样实现的,如下图所示:

第一步,先在方法区,把整个类信息,也就是这个Student类的全语信息,按一定规则摆放好。

第二步,在stack,先入main,从这里开始执行。执行的第一步,先传递args的参数,这里是空的。然后先用new,在堆区创造一个空的类对象,并将其起始地址指向s1。

第三步,继续往下执行即可。

第四步,如果要创建新的对象如s2、s3,依此类推即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

复业思维20240108

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值