JAVA基础——day06

面向对象

类:对象共有特征的描述
对象:真实存在的具体东西

类示例

类名 对象名 = new 类名();
Phone p = new Phone();

类的分类:

Javabean类(定义类):用来描述一类事物的类,不写main方法

测试类:编写main方法的类,创建javabean类的对象并进行赋值调用

类名

首字母建议大写,驼峰形式

一个java文件中可以定义多个类,但是只能一个类是public修饰,pubilc修饰的类名必须是代码文件名(建议一个文件定义一个class类)

private

在这里插入图片描述
get set 以及方法重载都可以使用 快捷键 alt + insert
在这里插入图片描述

this 关键字可以区分局部变量与全局变量
age 局部变量,取值采用就近原则
This.age 全局变量

This的本质:代表方法调用者的地址值

构造方法

也叫构造器,构造函数
作用:在创建对象的时候给成员变量进行赋值
在这里插入图片描述

TIPS:

构造方法的定义:
若没有定义构造方法,系统将会给出一个默认的无参构造方法
如果定义了,系统不在给出默认的构造方法

构造方法的重载:带参构造方法,无参构造方法,两者方法名相同,但参数不同,这叫构造方法的重载

无论是否使用,都手动书写无参构造方法(默认值),和带全部参数的构造方法。

构造方法,在创建对象的时候由虚拟机自动调用,给成员变量进行赋值

在这里插入图片描述

Java内存结构

一个对象内存图
内存结构主要涉及了方法区,栈(程序执行的控制语句在),堆(new出的数据,负责存储数据)
1.加载class文件(方法区)
2.申请局部变量(Student s = new Student() 申请了一个局部变量s在栈中,s的内容为堆的内存地址)
3.在堆内存中开辟一个空间
4.初始化
5.构造方法初始化
6.将堆中的内存地址给局部变量


两个引用指向同一个对象 如 Student st1 = new Student(); Student st2 = st1; 表示 st1 st2 指向同一个堆栈区域(由于st1所存的为堆的地址,传递的值也是地址值)

基本数据类型:整数类型,浮点数类型,布尔类型,字符类型
变量中存放的是真实值
引用数据类型:除上之外
变量中存放的是地址值

成员变量:类中的变量 在堆中 有默认初始化值
局部变量:方法中的变量 在栈中 需要初始值

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值