04 2020 档案
摘要:#include<stdio.h> int main() { int n,s,y; scanf("%d",&n); s=n; while(s>0){ y=y*10+s%10; s=s/10; } if(y==n) printf("yes"); else printf("no"); } 然后我把y赋初
阅读全文
摘要:浅拷贝:实例的基本数据类型(8种),重新clone一个数据一样的实例对象,引用类型clone地址值,不重新生成引用对象副本引用类型不独立 public class Person implements Cloneable { private String name; private int age;
阅读全文
摘要:饿汉式,使用static final修饰,类初始化的时候创建对象,之后操作的都是听一个对象,因此不存在线程安全问题 public class Person { //饿汉式(多线程也是单例) public static final Person PERSON = new Person(); priva
阅读全文
摘要:简单工厂模式严重违反开闭原则,耦合度太高,工厂方法模式正好弥补,之所以耦合度高是因为在创建实例的时候全部由工厂直接创造,因此工厂与对象直接联系,可以中间加一层抽象工厂,推迟创建时机,将创建实例对象的工作交给对应的对象工厂,那么在调用的时候还是使用抽象工厂(接口或抽象类)接收,但是实现为具体的对象工厂
阅读全文
摘要:1.要什么实例就造什么对象(对象接收) public class Cat { //生产 public void get() { System.out.println("生产一只猫"); } } public class Dog { //生产 public void get() { System.ou
阅读全文
摘要:封装:属性私有化,根据需要提供setter和getter方法使用public修饰,其他属性使用private修饰(具体使用什么修饰符依情况而定)。这里也属于开闭原则的范畴吧。通过这种特性,使得我们在使用某些方法或者变量的时候只用了解参数,返回值,功能即可,而不关心具体业务逻辑。这样就是面向对象而不是
阅读全文
摘要:Override存在于继承关系当中,对父类方法的重写(覆盖),正因为要对父类的方法进行重写,因此不能比父类“还大”,比如抛异常应该更具体(可等),访问权限也应该更广(可等);当然就访问权限而言,父类为了被继承显然是不能使用private修饰的,否则就不能继承了 public class Father
阅读全文
摘要:String的方法都有final修饰,对象在堆内存中,不可改变,因此每次使用String对象的方法和操作的时候,可以看做是“指针”指向了另一个堆内存空间,开辟新空间; StringBuilder和StringBuffer的对象都是可变的,而且StringBuilder和StringBuffer里面有
阅读全文