java面向对象的概念,Java类、引用变量与堆对象

一,面向对象概念

  1.类型(类) 指一个名词概念,如:老师,学生,图书

  2.引用(变量) 指引用具体概念实例的代词,如:某人、某物

 3.对象(东西) 指具体概念的个体实例,如:张无忌这个人、

 4.行为:方法
 5.多态 行为或者引用,在具体情形下会发生变化的现象
     比如:“一只动物”可以是“一匹马”、“一头驴”、“一只猴子”,多态的; “打”可以是“打酱油”、“打麻将”,“打人”,根据宾语发生变化,多态 的。
 6.封装 :任何对象实例都是尽可能封装, 减少暴露,它的实现细节对你是透明的(看不到)。比如:只能看到汽车的壳子、轮胎等,看不到发动机。
  7.继承 :概念的继承关系。


二.java类

   1,Java类,是用来描述事物类型的 如:public class student{

}

  2,类的声明,在“学生管理系统”中有概念:student

   student的特征是:姓名,学号,班级,性别,年龄等

在Java中这样表示“student“这个事物类型:


     public class student{

     String name;

     long id;//学号

    String bj;

    int age

}

注:”{}”花括号内的内容是类体

三,引用变量与对象的创建过程

public class StudentDemo{

                 public static void mian(string[] args){

Student student;   //声明引用student

                        student=new Student();//创建对象

                         student.name="lis";

                        System.out.println(student.name);//lis

student.name="lwangwu";

                        System.out.println(student.name);//wangwu

}

}

 


计算机执行Java程序时会在内存中开辟一块栈内存(stack)空间。其实在程序运行期间,JVM迓开辟了一个堆内存(heap)空间。 栈内存空间的存储特点是“后进先出”,堆内存空间的存储特点和栈不同,类似于一盘散沙,随处可以“堆放”。


栈内存中的引用变量指向堆内存中的实例对象, 属性是有初始值的,我们将堆内存里的东西称为“对象”,对应现实世界的事物

在程序执行中堆内存中有两个对象,引用变量student指向新创建的对象 原来引用的对象等待垃圾回收。

三,java的内存管理与分配

1, 栈是一块Java使用内存区域,使用的方式:LIFO(后来者居上)堆也是一块Java使用内存区域,使用方式:随机分配。

2,局部变量与堆对象空间分配
Java局部变量和方法参数在栈中分配,大小是按照变量的类型分配

对象在堆中分配,按照类中声明属性(实例变量)分配空间

3. 变量类型与分配
变量分为:基本类型和引用类型
基本类型变量的空间大小:就是基本类型的空间大小,值是基本类型的值
引用变量的值是一个对象的地址值,引用变量通过地址引用了一个堆对象
引用类型变量的占用空间大小和值管理是“透明的(丌可看见)”由Java系统管理:变量占用空间以及值的管理,都是透明的。。。

 

 


 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值