java个人笔记

public class ReflectPoint {

       public String str1 = "ball";

       public Stringstr2 = "basketball";

       public String str3 = "itcast";

 

       public String toString() {

            return str1 + ":" + str2 + ":" + str3;

       }

}

 

Field [] fields = obj.getClass().getFields();

for(Field field : fields) {

       if(fileld.getType() == String.Class) {

              String oldValue = (String)field.get(obj);

              String newValue = oldValue.replace('b','a');

              field.set(obj.newValue);

       }

}

 

专家模式,谁有这个数据,谁就干这事。

打印自己的类名:System.out.println(a1.getClass().getName());

打印父类的类名:System.out.println(a1.getClass().getSuperClass.getName());

得到长度:int len = Array.getLength(Obj);

修改所有相同变量名Alt + Shift + R

 

public static int add(int x, int … args) {

int sum = x;

for(int i = 0; i<args.Length; i++) {

sum += args[i];

}

Return sum;

}

 

add(2,3);

add(2,3,5);

 

注释:Ctrl +Shift + “/”

取消注释:Ctrl + Shift + “\”

查找:Ctrl + f

 

享元模式:有很多个小的对象,它们有很多属性相同,把它们变成一个对象。那些不同的属性,把它们变成方法的参数称做为外部状态,那些相同的属性,称之为这个对象的内部状态。

 

反射:反射就是把java类中的各种成分映射成相应的java

 

对象解码用“==”比较,不用“equals

 

泛型:

Hashmap<String, Integer> maps = new HashMap<String, Integer> ();

maps.put(“2xx”, 28);

maps.put(“lhm”, 35);

maps.put(“flx”, 33);

Set<Map.Entry<String, Integer>> entrySet = maps.entrySet();

for(Map.Entry<String, Integer> entry : entrySet) {

System.out.println(entry.getKey() + “:” + entry.getValue());

}

 

Java中的泛型类型(或者泛型)类似于C++中的模板,但是这种相似性仅限于表面,java语言中的泛型基本上完全是在编译器中实现,用于编译器执行类型检查和类型推断,然后生成普通的非泛型的字节码,这种实现技术称为擦除(编译器使用泛型类型信息保证类型安全,然后再生成字节码之前将其清除),这是因为扩展虚拟机指令集来支持泛型被认为是无法接受的。

 

不管未来的岁月如何变化,我只是想保持现有渴望汲取知识的状态。即使踽踽独行,我也要坚持的走下去。即使再无人注目的暗夜中,我也希望自己能够动情的燃烧着,为答谢那一段无怨无悔的岁月。

 

Eclipse找错:Window->Show View->Problems

 

 

面向方面的编程(Aspect Orierted Program,简称AOP),AOP的目标就是要使交叉业务模块化,可采用将切面代码移动到原始方法的周围,这与直接在方法中编写切面代码的运行效果是一样的。

你可能感兴趣的:(java基础)