当前位置: > 狗狗资讯 > 饲养护理 > 万博manbetx官网:《陈情令》中肖战演绎的魏无羡是否太过于娘化了?

万博manbetx官网:《陈情令》中肖战演绎的魏无羡是否太过于娘化了?

编辑:sqxzgg 时间:2022-06-16 来源:人人爱宠物网

这个问题最近正好认真思考过,我来答一答吧,不对欢迎指正万博manbetx官网。魏无羡分3个阶段,第一少年阶段,很欠,年少轻狂活泼可爱,娘不存在,是少年气的可爱活泼。第二阶段,灭门以后,有些黑化,炫酷拽炸,娘是不存在的,超帅霸气。第三阶段,重生后是有些娇俏的。这也正符合原著描写,重生后莫玄宇因为迫害有tx倾向,这也正是尊重原著与平衡大环境的结合点,但是这段总旋律是洒脱的。

最后说一说,演员努力塑造形象是专业性的表现,不是演员就成了剧中人物,非常多的演员演过太监妓女等形象,难道他们都成了太监妓女?剧内讨论剧情,剧外讨论演技,尊重每个人的努力万博manbetx官网。

spring的核心技术有哪些?

一万博manbetx官网:控制反转

**1.**Spring 三个核心思想是什么万博manbetx官网:控制反转,依赖注入和面向切面编程。

**2.**Spring最核心,最基础的概念是什么万博manbetx官网?将spring类比java,java最核心,最基础的概念就是object了。java中,所有的操作都是针对object的(基础类型除外),java中,一切皆对象,一切都是object。类比下来,spring中最基础的概念是bean。在spring中,所以的类都可以认为是一个bean。(个人认为)在spring中的所有文件,都可以认为是注册了的bean和未注册的bean。 spring中所有操作都是针对bean的操作。自然,spring的三大核心思想中操作的对象,也是bean.

3.代码讲解IOC控制反转

(1)定义一个接口 public interface IPrint { /** * onLine: 对象需要实现这个方法来实现打印对象的功能 * void 返回类型 */ String printObject(); } 1 2 3 4 5 6 7 8

(2)实现接口 public class UserBean implements IPrint{ @Override public String printObject() { // TODO Auto-generated method stub System.out.println("打印对象UserBean:"); return "abc"; } } public class MyBean implements IPrint{ @Override public String printObject() { // TODO Auto-generated method stub System.out.println("打印对象MyBean:"); return null; } } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

(3)测试 IPrint print = new UserBean(); print.printObject(); 1 2 很正常的执行结果(“打印对象UserBean:”)。但是这时候我想修改一下,打印第二个实现类,这时候就需要修改代码了,修改代码毕竟是不符合开闭原则,又比较麻烦的事,这时候就需要用到spring的控制反转:对继承了接口IPrint的具体实现类的具体对象的创建,不依赖于调用他的客户端代码,而将控制权交给spring(其实就是xml文件),这就是控制反转。

4.控制反转实现 测试类: /读取配置文件(将配置文件中的bean加载进内存) ApplicationContext ctx = new ClassPathXmlApplicationContext("/testSpring/resources/applicationContext.xml"); //获取的实例 IPrint bean=(IPrint)ctx.getBean("userBean"); //调用方法 bean.printObject(); 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 如果想要打印另一个实现类,只要修改配置文件:

1 总结:从spring的控制反转实现可以看出,客户端的实现不必去修改代码,从而达到了松耦合的目的。控制反转最后就是将主动权交给接口。

二:依赖注入 常用的注入方式有四种: 1. 属性注入 2. 构造方法注入 3. 工厂方法注入 4. 注解注入 (1)属性注入 package test; public class User { private String name; private String gender; public String getName() { return name; } public User(String name, Integer age) { this.name = name; this.age = age; } public void setName(String name) { this.name = name; } public String getGender() { return gender; } public void setGender(String gender) { this.gender = gender; } @Override public String toString() { return "User [name=" name ", gender=" gender "]"; } } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

spring.xml文件配置: 1 2 3 4 测试函数: public static void main(String args[]){ ApplicationContext atc = new ClassPathXmlApplicationContext("spring.xml"); User user = (User) atc.getBean("user"); System.out.println(user);//print User [name=cup, gender=man] } 1 2 3 4 5 6 而如果我们把POJO中的getName方法去掉,结果不变,但setName方法删掉,我们再运行程序,会看到

2)构造函数注入: 在xml文件定义Bean: 调用测试函数: public static void main(String args[]){ ApplicationContext atc = new ClassPathXmlApplicationContext("spring.xml"); User user = (User) atc.getBean("user1"); System.out.println(user.getName() "——" user.getAge()); //print cup——25 } 1 2 3 4 5 6 7 8

(3)工厂方法注入 i.非静态工厂方法 先定义工厂类: package test; public class UserFactory { public User createUser(){ User user = new User("cup",25); return user; } } 1 2 3 4 5 6 7 8 进行Bean配置: 1 2 调用测试函数: public static void main(String args[]){ ApplicationContext atc = new ClassPathXmlApplicationContext("spring.xml"); User user = (User) atc.getBean("user3"); System.out.println(user.getName() " ——" user.getAge() ); //print cup——25 } 1 2 3 4 5 6 (4)注解注入 i. 对类成员变量注解 使用@Autowire实现自动注入,格式如: @Component public class IdCard{ ..... } 1 2 3 4 public class User{ //Autowired默认按类型注入,@required 表明如果找不到对应的bean则为null,但如果设定为true(也是默认值),则要求一定要找到匹配的bean,否则会抛出异常。 //Qualifier常用于容器有一个以上相同类型的Bean,通过指定名字来指定唯一的Bean @Autowired(required = false ) @Qualifier("idCard") private IdCard idCard;//也可以将IdCard配置在xml文件中注入 ..... } 1 2 3 4 5 6 7 8 ii. 对类成员方法进行注解 @Autowired public void init(@Qualifier(“usar1")User user1,@Qualifier("user2")User user2){ this.user1 = user1; this.user2 = user2; }

阅读:

狗狗医疗