CGBTN2110-DAY06总结复习,华为java工程师面试题

Phone p = new Phone();创建对象时,内存发生了什么?

  1. 在栈内存中开辟一块空间,Phone类型的引用类型变量p,把p压入栈底,此时p只有一个默认值null

  2. 在堆内存中开辟一块空间用于存放Phone类型的对象

  3. 要给这个对象进行初始化,比如:String brand = null;

  4. 此对象已经准备好,所以会生成一个唯一的地址值,并将这个地址值交给栈内存中的变量p来保存

  5. 如果后续想要对对象做操作,比如:p.price=88.8;先会找到栈中p变量保存的地址值,根据这个地址找到堆中的对象再做进一步的操作

3.面向对象的特征–封装


3.1为啥要用封装?

  1. 封装可以提高程序的安全性

  2. 封装可以让资源按照我们预先规定的方式来操作

3.2属性的封装

用private修饰属性,一旦属性被private修饰,就只能在本类中使用,外界无法访问

所以为了让外界能够按照我们提供的方式来调用,需要根据属性生成公共的getXxx()与setXxx()方法

3.2 方法的封装

方法的封装也是使用private来修饰方法

如果想要调用私有方法的功能,就需要在本类的公共方法里调用这个私有方法

4 拓展综合练习1

===============================================================================

package cn.tedu.exec;

/本类用于面向对象的巩固练习1/

public class TestCar {

public static void main(String[] args) {

//4.创建对象进行测试 创建对象 属性赋值 查看属性 调用功能

Car c = new Car();

// c.brand = “BMW”;

// c.color = “暗夜黑”;

// c.price = 9.9;

// c.length = 0.1;

// System.out.println(c.brand);

// System.out.println(c.price);

// System.out.println(c.length);

// System.out.println(c.color);

c.start();

//c.stop();

//6.创建汽车类对象c2,给属性赋值并查看

Car c2 = new Car();

c2.setBrand(“特斯拉”);

c2.setColor(“五彩斑斓的黑”);

c2.setLength(3.6);

c2.setPrice(218888.88);

System.out.println(c2.getBrand());

System.out.println(c2.getColor());

System.out.println(c2.getLength());

System.out.println(c2.getPrice());

c2.start();

//c2.stop();

}

}

//1.分析汽车这一类事物的共同特点,抽象形成类Car

class Car{

//2.定义汽车类的属性:品牌brand 颜色color 价格price 车长length

//5.封装4个属性,并提供对应的get与set方法

private String brand;

private String color;

private double price;

private double length;

public String getBrand() {

return brand;

}

public void setBrand(String brand) {

this.brand = brand;

}

public String getColor() {

return color;

}

public void setColor(String color) {

this.color = color;

}

public double getPrice() {

return price;

}

public void setPrice(double price) {

this.price = price;

}

public double getLength() {

return length;

}

public void setLength(double length) {

this.length = length;

}

//3.1定义汽车启动的方法

public void start(){

System.out.println(“我的小车车启动啦~”);

stop();

}

//3.2定义汽车停止的方法

//7.封装停止的方法,并调用停止方法的功能

private void stop(){

System.out.println(“唉呀妈呀,熄火了~”);

}

}

5 拓展综合练习2

===============================================================================

package cn.tedu.exec;

/本类用于面向对象综合练习案例2/

public class TestDog {

public static void main(String[] args) {

//5.1创建本类的对象1

Dog d1 = new Dog();

//给对象的属性赋值:哮天犬 999 细犬 二郎神 10000,并查看

d1.setName(“哮天犬”);

d1.setAge(999);

d1.setKind(“细犬”);

d1.setHost(“二郎神”);

d1.setPrice(10000);

System.out.println(d1.getName());

System.out.println(d1.getAge());

System.out.println(d1.getKind());

System.out.println(d1.getHost());

System.out.println(d1.getPrice());

//6.创建小狗类的对象2并调用小狗类的功能

Dog d2 = new Dog();

d2.run();

d2.eat(6);

d2.sleep(8.8);

d2.play(“二郎神”);//纯调用play()的功能

//既调用了play()的功能,又接到了返回值

String s = d2.play(“沉香”);

System.out.println(s);//打印接到的返回值

//没有定义多余的变量,直接打印方法的返回值

System.out.println(d2.play(“三圣母”));

//d2.bark();//私有方法不可以在其他类调用

}

}

//1.抽象形成一个小狗类Dog

class Dog{

//2.属性:名字name 年龄age 品种kind 主人host 价格price

//3.1封装所有的属性

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
img

总结

我个人认为,如果你想靠着背面试题来获得心仪的offer,用癞蛤蟆想吃天鹅肉形容完全不过分。想必大家能感受到面试越来越难,想找到心仪的工作也是越来越难,高薪工作羡慕不来,却又对自己目前的薪资不太满意,工作几年甚至连一个应届生的薪资都比不上,终究是错付了,错付了自己没有去提升技术。

这些面试题分享给大家的目的,其实是希望大家通过大厂面试题分析自己的技术栈,给自己梳理一个更加明确的学习方向,当你准备好去面试大厂,你心里有底,大概知道面试官会问多广,多深,避免面试的时候一问三不知。

大家可以把Java基础,JVM,并发编程,MySQL,Redis,Spring,Spring cloud等等做一个知识总结以及延伸,再去进行操作,不然光记是学不会的,这里我也提供一些脑图分享给大家:

希望你看完这篇文章后,不要犹豫,抓紧学习,复习知识,准备在明年的金三银四拿到心仪的offer,加油,打工人!
给自己梳理一个更加明确的学习方向,当你准备好去面试大厂,你心里有底,大概知道面试官会问多广,多深,避免面试的时候一问三不知。

大家可以把Java基础,JVM,并发编程,MySQL,Redis,Spring,Spring cloud等等做一个知识总结以及延伸,再去进行操作,不然光记是学不会的,这里我也提供一些脑图分享给大家:

[外链图片转存中…(img-s70brtiW-1711926757992)]

[外链图片转存中…(img-dtkKh24h-1711926757993)]

[外链图片转存中…(img-m6YDAgpM-1711926757993)]

希望你看完这篇文章后,不要犹豫,抓紧学习,复习知识,准备在明年的金三银四拿到心仪的offer,加油,打工人!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值