-
在栈内存中开辟一块空间,Phone类型的引用类型变量p,把p压入栈底,此时p只有一个默认值null
-
在堆内存中开辟一块空间用于存放Phone类型的对象
-
要给这个对象进行初始化,比如:String brand = null;
-
此对象已经准备好,所以会生成一个唯一的地址值,并将这个地址值交给栈内存中的变量p来保存
-
如果后续想要对对象做操作,比如:p.price=88.8;先会找到栈中p变量保存的地址值,根据这个地址找到堆中的对象再做进一步的操作
3.1为啥要用封装?
-
封装可以提高程序的安全性
-
封装可以让资源按照我们预先规定的方式来操作
3.2属性的封装
用private修饰属性,一旦属性被private修饰,就只能在本类中使用,外界无法访问
所以为了让外界能够按照我们提供的方式来调用,需要根据属性生成公共的getXxx()与setXxx()方法
3.2 方法的封装
方法的封装也是使用private来修饰方法
如果想要调用私有方法的功能,就需要在本类的公共方法里调用这个私有方法
===============================================================================
-
定义汽车类Car
-
定义汽车类的属性:颜色 品牌 价格 车长
-
定义汽车类的方法:启动功能start() 停止功能stop(),stop()要封装,先启
必看视频!获取2024年最新Java开发全套学习资料 备注Java
动再停止
-
创建Car类的对象c,给c对象的属性赋值并查看:“暗夜紫” “BMW” 200 0.2
-
封装定义好的4个属性,并提供属性对应的get与set方法
-
使用set()与get()重新给c对象赋值并查看赋值结果 “特斯拉” “black” 200.02 3
package cn.tedu.review;
/本类用于OOP的知识回顾/
public class TestCar {
public static void main(String[] args) {
//4.创建汽车类的对象c
Car c = new Car();
//5.给c对象的属性赋值,并打印查看赋值的结果"宝马" “活力橙” 200000.98 3.1
// c.brand = “宝马”;
// c.color = “活力橙”;
// c.price = 200000.98;
// c.length = 3.1;
// System.out.println(c.length);
// System.out.println(c.price);
// System.out.println(c.brand);
// System.out.println(c.color);
//6.通过c对象调用汽车类的方法
c.start();
//c.stop();
//8.通过set方法给c对象重新赋值 “特斯拉” “石墨绿” 210000.99 2.9
c.setBrand(“特斯拉”);
c.setColor(“石墨绿”);
c.setPrice(210000.99);
c.setLength(2.9);
//9.通过get方法查看c对象的属性是否赋值成功
System.out.println(c.getBrand());
System.out.println(c.getColor());
System.out.println(c.getPrice());
System.out.println(c.getLength());
}
}
//1.定义汽车类Car,用来描述汽车这一类事物
class Car{
//2.定义汽车类的属性
//7.封装属性,并提供对应的get与set方法
private String brand;//品牌
private String color;//颜色
private double price;//价格
private double length;//车长
//3.定义汽车类的方法
public void start(){
System.out.println(“汽车启动~”);
stop();//在本类的公共方法里调用这个私有方法
}
//10.封装并调用stop()的功能
private void stop(){
System.out.println(“汽车停止~”);
}
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public String getColor() {
结语
小编也是很有感触,如果一直都是在中小公司,没有接触过大型的互联网架构设计的话,只靠自己看书去提升可能一辈子都很难达到高级架构师的技术和认知高度。向厉害的人去学习是最有效减少时间摸索、精力浪费的方式。
我们选择的这个行业就一直要持续的学习,又很吃青春饭。
虽然大家可能经常见到说程序员年薪几十万,但这样的人毕竟不是大部份,要么是有名校光环,要么是在阿里华为这样的大企业。年龄一大,更有可能被裁。
送给每一位想学习Java小伙伴,用来提升自己。
本文到这里就结束了,喜欢的朋友可以帮忙点赞和评论一下,感谢支持!
择的这个行业就一直要持续的学习,又很吃青春饭。
虽然大家可能经常见到说程序员年薪几十万,但这样的人毕竟不是大部份,要么是有名校光环,要么是在阿里华为这样的大企业。年龄一大,更有可能被裁。
送给每一位想学习Java小伙伴,用来提升自己。
[外链图片转存中…(img-8SimIXRr-1716355441073)]
本文到这里就结束了,喜欢的朋友可以帮忙点赞和评论一下,感谢支持!