构造方法

IoC 中 car 对象的配置如下,现在要添加 user 对象,并且将 car 注入到 user 中,正确的配置是?

99封情书 提交于 2019-11-25 20:14:00
<bean id="car" class="com.southwind.entity.Car"></bean> Spring三种注入 设值注入--注入方式1/3 < bean id = "user" class = "com.cosmos.entity.User" > <!-- 注入List集合(不重复,有序) --> < property name = " list1" > < list > < value > 123 </ value > < value > 124 </ value > </ list > </ property > <!-- 注入Set集合(重复无序) --> </ bean > 通过property来实现给对象的属性赋值。 构造注入--注入方式2/3 创建带参构造方法 编写带参构造方法后,Java虚拟机不再提供默认的无参构造方法,为了保证使用的灵活性,建议自行添加一个无参构造方法。 怎么实现构造呢? < bean id = "userServiceImpl" class = "com.cosmos.service.impl.UserServiceImpl" > < constructor-arg > < ref bean = "userDao" /> </ constructor-arg > </ bean >

单例模式

我只是一个虾纸丫 提交于 2019-11-25 19:32:14
单例模式 1. 饿汉式-线程安全 public class Singleton { private static Singleton uniqueInstance = new Singleton ( ) ; //私有静态变量 private Singleton ( ) { //私有构造方法 } public static Singleton getUniqueInstance ( ) { //公有静态函数 return uniqueInstance ; } } 优点: 采取直接实例化 uniqueInstance 的方式,所以不会产生线程不安全的问题。 缺点: 直接实例化的方式丢失了延迟实例化带来的节约资源的好处。 场景: JDK中 java.lang.Runtime; 里使用了饿汉式。 2. 懒汉式-线程不安全 public class Singleton { private static Singleton uniqueInstance ; //私有静态变量 private Singleton ( ) { //私有构造方法 } public static Singleton getUniqueInstance ( ) { //公有静态函数 if ( uniqueInstance == null ) { uniqueInstance = new Singleton ( ) ; }

Java学习(七)面向对象编程

此生再无相见时 提交于 2019-11-25 19:26:54
面向对象编程 1. 面向对象四大基本特性 封装 继承 多态 抽象 2. 对象和类 对象 :对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。 类 :类是一个模板,它描述一类对象的行为和状态。 构造方法 创建对象的时候调用 要求: 没有返回值,连void都没有 方法名称和类名称一样 自己写了构造方法,系统将不再调用构造方法 用处: 能创建对象 给属性赋值 3. 访问权限关键字 private default protected public 4. 匿名对象 没有名字的对象 使用场景: 当对象对方法仅进行一次调用的时候,就可以简化成匿名对象。 匿名对象可以作为实际参数进行传递。 5. 值传递和引用传递 值传递对形参的修改不会影响实参 引用类型传引用,形参和实参指向同一个内存地址(同一个对象),所以对参数的修改会影响到实际的对象。 String,Integer,Double等immutable(不可改变)的类型特殊处理,可以理解为传值,最后的操作不会修改实参对象。 public void swap(int a,int b){ ​ int temp = a; ​ a = b; ​ b=temp; } 调用该方法时只会在方法内部完成交换。 6. 垃圾回收机制 垃圾回收(Garbage Collection)是Java虚拟机