面向对象2访问修饰符privatedefaultprotectedpublic当前类✔️✔️✔️✔️同一个包✖️✔️✔️✔️不同包✖️✖️✔️✔️无关类✖️✖️✖️✔️参数传递基本类型和String类型的参数传递(值传递) 在进行基本类型的参数传递是,传的是参数的值,并不是参数本身!当main方法调用其他方法时,改变的只是被调用的方法的参数,与main方法内的参数无关。当方法执行结束后,所有的参数对象都会被gc自动销毁回收。引用类型的参数传递(内存地址传递) 引用数据类型非常多,大致包括: 类、接口类型、数组类型、枚举类型、注解类型 在进行引用类型的参数传递是,传的是引用类型的参数地址
目录原型系统原型基本概念示例关系改进创建对象的模式单纯使用原型模式创建对象综合构造函数和原型模式创建对象原型系统原型基本概念原型(prototype)是函数特有的属性。只要创建了一个函数,这个函数就会自动创建一个prototype属性(显式原型),并指向该函数的原型对象。原型对象上都有一个constructor属性,指向prototype属性所在的函数(即函数本身)。而对于每一个构造函数创建出的实例对象,内部都会有一个[[Prototype]]属性(隐式原型),同样指向函数的原型对象。在Firefox、Safari和Chrome浏览器中,每个对象都可以通过__proto__属性访问到它们的[[
目录原型系统原型基本概念示例关系改进创建对象的模式单纯使用原型模式创建对象综合构造函数和原型模式创建对象原型系统原型基本概念原型(prototype)是函数特有的属性。只要创建了一个函数,这个函数就会自动创建一个prototype属性(显式原型),并指向该函数的原型对象。原型对象上都有一个constructor属性,指向prototype属性所在的函数(即函数本身)。而对于每一个构造函数创建出的实例对象,内部都会有一个[[Prototype]]属性(隐式原型),同样指向函数的原型对象。在Firefox、Safari和Chrome浏览器中,每个对象都可以通过__proto__属性访问到它们的[[
一、Set的使用点击查看代码@Testpublicvoidtest7(){HashSetset=newHashSet();set.add(456);set.add(123);set.add(123);set.add("AA");set.add(newPerson("Twq",23));set.add(newPerson("Twq",23));set.add("CC");Iteratoriterator=set.i
一、Set的使用点击查看代码@Testpublicvoidtest7(){HashSetset=newHashSet();set.add(456);set.add(123);set.add(123);set.add("AA");set.add(newPerson("Twq",23));set.add(newPerson("Twq",23));set.add("CC");Iteratoriterator=set.i
每日3题16以下代码执行后,控制台中的输出内容为?leta={n:1};letb=a;a.x=a={n:2};console.log(a.x);console.log(b.x);17以下代码执行后,控制台中的输出内容为?leta={};letb="123";letc=123;a[b]="b";a[c]="c";console.log(a[b]);18以下代码执行后,控制台中的输出内容为?functionuser(obj){obj.name="aaa";obj=newObject();obj.name="bbb";}letperson=newObject();user(person);conso
每日3题16以下代码执行后,控制台中的输出内容为?leta={n:1};letb=a;a.x=a={n:2};console.log(a.x);console.log(b.x);17以下代码执行后,控制台中的输出内容为?leta={};letb="123";letc=123;a[b]="b";a[c]="c";console.log(a[b]);18以下代码执行后,控制台中的输出内容为?functionuser(obj){obj.name="aaa";obj=newObject();obj.name="bbb";}letperson=newObject();user(person);conso
1.Static详情见下面代码讲解点击查看代码packagecom.Tang.oop.demo07;publicclassStudent{privatestaticintage;//静态变量privatedoublescore;//非静态变量publicvoidrun(){go();//非静态方法可以调用静态方法}publicstaticvoidgo(){}publicstaticvoidmain(String[]args){Students1=newStudent();System.out.println(Student.age);//静态变量可以被类中的所有实例去共享//System.ou
1.Static详情见下面代码讲解点击查看代码packagecom.Tang.oop.demo07;publicclassStudent{privatestaticintage;//静态变量privatedoublescore;//非静态变量publicvoidrun(){go();//非静态方法可以调用静态方法}publicstaticvoidgo(){}publicstaticvoidmain(String[]args){Students1=newStudent();System.out.println(Student.age);//静态变量可以被类中的所有实例去共享//System.ou
MyBatis的关联映射01Mybatis的关联映射实际的开发中,对数据库的操作常常会涉及到多张表,这在面向对象中就涉及到了对象与对象之间的关联关系。针对多表之间的操作,MyBatis提供了关联映射,通过关联映射就可以很好的处理对象与对象之间的关联关系。1.关联关系概述在关系型数据库中,多表之间存在着三种关系,分别是一对一,一对多,多对多。一对一:在任意一个表中引入另外一个表的主键作为外键。一对多:在多个表中都引入了某一个表的主键作为外键多对多:需要用一张中间表表示多对多的关系,这张中间表引入两张表的主键作为外键。一般来说一个对象映射一张表,因此一对一的关系就是在A类中定义B类属性,一对多的关