Bug猫学习史#1:面向对象

在Java编程中,掌握几个核心概念对深入学习至关重要:类属性建议采用包装类以提升灵活性;建造者模式中this关键字能有效简化对象构建过程;static关键字涉及类的加载机制;接口默认使用public修饰符并支持默认方法实现;多态特性结合instanceof操作符可实现类型安全检查;此外,不同代码块的执行顺序直接影响程序初始化流程。这些基础知识点构成了Java面向对象编程的重要支柱。


1.类的属性

在创建类时,属性和方法返回值类型 建议使用包装类(Boolean、Character、Integer等),引用属性默认为null;

基础类型有默认值,不允许为null值,如果确定不会有null情况,基础类型无对象创建故性能更好,但如果不是高频环境,那点性能忽略不计,更应该让代码有灵活性。

2.this使用

目前常用于建筑者模式中

java 复制代码
public class Person {

    private String name;
    private String password;
    private Integer age;
    private Integer sex;

    private Person(Builder builder) {
        this.name = builder.name;
        this.password = builder.password;
        this.age = builder.age;
        this.sex = builder.sex;
    }

    public static Builder builder() {
        return new Builder();
    }

    public static class Builder {
        private String name;
        private String password;
        private Integer age;
        private Integer sex;


        public Builder name(String name) {
            this.name = name;
            return this;
        }

        public Builder password(String password) {
            this.password = password;
            return this;
        }

        public Builder age(Integer age) {
            this.age = age;
            return this;
        }

        public Builder sex(Integer sex) {
            this.sex = sex;
            return this;
        }

        public Person build() {
            return new Person(this);
        }
    }
    
}

3.static关键字

在类里面的静态成员在类加载时初始化;好比在房间开门时,将咖啡机也搬进房间,但是静态方法初始化不等于自动运行,还需调用触发手动去接咖啡;注意如果是静态初始化快会在首次类加载时自动运行代码

4.可变参数

5.接口

下面展示接口的默认修饰符,如果将来添加功能时,该功能几行代码就搞定了,就没必要再定义抽象方法再重写,可以直接定义默认方法或静态方法。

6.多态

多态是高扩展性的体现;在父类 = new 子类中,成员变量优先从父类获取,成员方法优先从子类获取。

使用instanceof关键字可以判断对象是否属于某个类

7.权限修饰符

8.代码块

执行优先级:静态代码块(只一次)> 构造代码块 > 构造器

相关推荐
奔波霸的伶俐虫几秒前
redisTemplate.opsForList()里面方法怎么用
java·开发语言·数据库·python·sql
自在极意功。3 分钟前
简单介绍SpringAOP
java·spring·aop思想
__万波__4 分钟前
二十三种设计模式(二十三)--责任链模式
java·设计模式·责任链模式
TT哇5 分钟前
基础的IDEA基本使用,如:debug流程、常用快捷键
java·ide·intellij-idea
梵得儿SHI7 分钟前
(第七篇)Spring AI 核心技术攻坚:国内模型深度集成与国产化 AI 应用实战指南
java·人工智能·spring·springai框架·国产化it生态·主流大模型的集成方案·麒麟系统部署调优
北辰当尹17 分钟前
【实习之旅】Kali虚拟机桥接模式ping通百度
java·服务器·桥接模式
Just Dreamchaser22 分钟前
Pdf和Docx文件导出生成水印工具类
java·给pdf和docx文件添加水印
这个需求做不了24 分钟前
Java实现文件格式转换(图片,视频,文档,音频)
java
愿你天黑有灯下雨有伞29 分钟前
高性能Java并发编程:如何优雅地使用CompletableFuture进行异步编排
java
indexsunny30 分钟前
互联网大厂Java面试实战:基于电商场景的Spring Boot与微服务技术问答
java·spring boot·微服务·面试·hibernate·电商场景·技术问答