关注类和接口

简介:

最小化可访问性

1:包括方法,属性,内部类,提供最少方法的接口供外部使用。
2:一个类如果只被另一个类使用,应该作为类的内部类
3:可以default 方便测试类访问,不能超过default了。

不要有public属性

提供private 和一个public方法

最小化可变性

不可变类好处,随便被各个类引用,随便被多线程并发,随便被使用
对象提供的时候就设置好了属性,不提供set方法
final class防止子类提供set方法,构造器私有,提供静态方法(valueOf()等)
final修饰属性,仅在构造函数提供设置机会,完全完成初始化
private修饰属性,防止被访问
可变属性中,不要引用不可变属性

复合优于继承

为了复用代码,最好是互相引用,而不是继承,父类稍微改一下就爆炸

慎用继承

继承破坏了封装性,能不用就不用。
1:一般final class
2:非要继承,请提示好哪些方法可以覆盖,哪些方法是不能动的。
3:abstract class 和interface ,除外。他们可以很好的使用继承

接口优于抽象类

类只能单继承,可以多实现接口,所以接口更灵活,更加随意。
抽象类的单继承,觉得了多个抽象类必须是互相有上下游,才能公用多个。实现符合功能。而接口随意。
模版类,优先选择抽象类型。

接口仅包含方法

不要把常量放接口里,常量一般是实现细节,和接口无关

同类继承

同类实现继承分开,不要写个大类,type ==xxx之类的模式

匿名函数使用对象

callback function 等回调函数最好不要有属性,提供单例供其他需要者使用。

静态内部类

非静态,匿名类,局部类 三种内部类,缺点比静态内部类多

类结构

自上而下

1:类注释
2:静态常量
3:静态类
4:属性
5:构造函数
6:方法

目录
相关文章
|
Java
类与接口介绍
在Java中,类和接口是两种重要的概念,用于描述对象的属性和行为。它们是面向对象编程的基础,用于组织和管理代码。 类(Class)是一种模板或蓝图,用于创建对象。它定义了对象的属性和行为。类是Java中最基本的组织单元,所有的对象都是根据类来创建的。类由字段(属性)和方法组成。字段表示对象的状态或属性,而方法表示对象的行为或操作。 以下是一个简单的Java类的示例: ```java public class Person { // 字段 private String name; private int age; // 构造方法 publi
74 0
|
9月前
|
SQL Java 数据库连接
JAVAJDBC中常用的接口和类
JAVAJDBC中常用的接口和类
125 0
|
9月前
|
Java
如何在类中实现并调用多个接口中的共享方法。
如何在类中实现并调用多个接口中的共享方法。
71 1
|
C# 安全
C#相等性 - 三个方法和一个接口
C#相等性 - 三个方法和一个接口简介C#(.NET)的object类里面有三个关于判断相等性的方法: public virtual bool Equals(object obj)public static bool Equals(object objA, object objB)public static bool ReferenceEquals(object objA, object objB)还有一个接口:IEquatable也可以用来判断相等性。
2287 0
|
Java
接口多继承自接口和接口是否可以继承自一般类的疑问?
接口是常量值和方法定义的集合。接口是一种特殊的抽象类。 Java类是单继承的。classB Extends classA java接口可以多继承。Interface3 Extends Interface0, Interface1, interface…… 不允许类多重继承的主要原因是,如果A同时继承B和C,而B和C同时有一个D方法,A如何决定该继承那一个呢? 但接口不存在这样的问题,接口全都是抽象方法继承谁都无所谓,所以接口可以继承多个接口。
881 0
抽象类和接口解析
1.抽象类 有abstrat修饰的类。 特点: 1. 可以有非抽象的变量和方法。 2. 只能使用public和protect修饰。 3. 子类必须实现抽象类的抽象方法。(如果除了子类也是抽象类) 4. 有构造方法。
130 0
抽象类和接口解析
|
网络协议 测试技术 Go
实现接口和继承比较(1) | 学习笔记
快速学习实现接口和继承比较(1)
实现接口和继承比较(1) | 学习笔记

热门文章

最新文章