CGBTN2108-DAY10总结复习

  1. 创建学生类Student

package cn.tedu.oop;

/本类用于描述学生这一类事物/

public class Student {

//1.1定义学生的属性

//1.2 封装学生的属性

private int id;//学号

private String name;//姓名

private char gender;//性别

private String address;//住址

private String subject;//科目

//2.1提供本类的无参构造

public Student(){

System.out.println(“我是Student的无参构造”);

}

//2.2提供本类的全参构造

//右键->Generate->Contructor->Shift全选所有属性->OK

public Student(int id, String name, char gender, String address, String subject) {

this.id = id;

this.name = name;

this.gender = gender;

this.address = address;

this.subject = subject;

System.out.println(“我是Student的全参构造”);

}

//3.1提供本类的普通方法1

public void study(){

System.out.println(“学习使我快乐~”);

}

//3.2提供本类的普通方法2

public void eat(int n){

System.out.println(“今天我要干它”+n+“碗大米饭”);

}

//3.3提供本类的普通方法3

public String sleep(){

return “今天又睡了美美的一觉”;

}

//4.提供本类的一个展示类型与所有属性和属性值的方法

public void show(){

System.out.println(“Student:[id=”+id+“,name=”+name+“,gender=”+gender+“,address=”+address+“,subject=”+subject+“]”);

}

//1.3提供属性对应的get与set方法

//右键->Generate->Getter and setter->Shift全选所有属性->OK

public int getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public char getGender() {

return gender;

}

public void setGender(char gender) {

this.gender = gender;

}

public String getAddress() {

return address;

}

public void setAddress(String address) {

this.address = address;

}

public String getSubject() {

return subject;

}

public void setSubject(String subject) {

this.subject = subject;

}

}

  1. 创建学生类的测试类TestStudent

package cn.tedu.oop;

/本类用作学生类的测试类/

public class TestStudnet {

public static void main(String[] args) {

//1.1使用无参构造创建对象

Student s = new Student();

//1.2通过setXxx()给对象的所有属性赋值

s.setId(1);

s.setName(“林冲”);

s.setGender(‘男’);

s.setSubject(“CGB”);

s.setAddress(“庙里”);

//1.3通过对象调用方法测试

s.study();

s.eat(3);

System.out.println(s.sleep());

s.show();//Student:[id=1,name=林冲,gender=男,address=庙里,subject=CGB]

//2.1使用全参构造创建对象

Student s2 = new Student(2,“李逵”,‘男’,“猪肉铺”,“ACT”);

s2.study();

s2.eat(10);

System.out.println(s2.sleep());

s2.show();

}

}

2. 接口


  1. 我们通过interface关键字定义接口

  2. 接口实现类需要通过关键字implements与接口建立实现关系

  3. 接口不可以创建对象/实例化

  4. 在Java8中,接口中所有的方法都是抽象方法,方法可以简写,会自动拼接public abstract

  5. 接口中没有构造方法,接口实现类调用的构造方法是父类的,不是父接口的

注意:如果一个类没有明确指定父类的话,会默认继承顶级父类Object

  1. 接口中没有成员变量,都是静态常量,默认会拼接public static final

  2. 接口不是类!!!你可以把接口理解成一个特殊的抽象类,特殊在,所有的方法都是抽象方法

  3. 如果一个实现类实现了接口,要不变成一个抽象子类【不实现/实现部分】,要不变成一个普通子类【全部实现】

  4. 接口是用来制定规则的【有哪些方法,方法有参数吗?有返回值类型吗?】,并不做具体的实现

  5. 接口可以多继承【一个接口可以继承多个接口】 多实现 【一个类可以实现多个接口】

3. 类与类的关系


继承关系,只支持单继承

比如: class A extends B ,A是子类,B是父类,子类具备父类的所有功能

  1. 子类不能使用父类的私有资源,原因是私有不可见

  2. 继承相当于子类把父类的功能复制了一份,但是构造方法不可继承

最后

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

深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

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

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

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

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值