面向对象: 1.面向对象编程的思想来源于生活,一起皆对象。 要描述这个世界上任何一个对象都可以通过静态属性(成员变量)和动态属性(方法/函数)描述 2.定义一个类就等于定义了一种新的数据类型,。 3.一个类就是一个具体对象实例模板。 构造函数:与类同名,没有返回值,当没有自定义构造函数时,系统会自动创建一个 无参数的构造函数,一旦自定义了有参数的构造函数系统将不再自动创建无参数的构造函数。(只要写了有参数的 构造函数,都必须写无参数的构造函数) this 指当前实例对象 get(取出成员变量的值) 一旦成员变量拥有了set和get就变成了属性 4.面向对象三大特性: ①:封装 ②:继承 ③:多态 this (name,gender)this()调用对应参数个数或者类型的构造函数。注意必须在第一条语句。 string info =“ ” java中cang包中的类不用引包,直接使用。 string ingo1=“” string ingo2=“” //判断相等。要注意是地址相等还是内容相等。 java中==判断地址相等 java对直接使用字符串类型做了优化。当两个值相同时。第二变量不再新开辟空间 比较字符串内容相等(equals) eg : if(data,equals()) matches 正则表达式 字符分割:sqlite 注意:“·”在正则表达式中有其他的含义,所以要【·】 注意:“\\”在正则表达式中“\\\\”//这里“\\\\”因为这里是正则表达式,要\\代表一个\ File.separator跨平台|| path.lastIndexof(“\\”);这里不是正则表达式 //判断字符串的开头和结尾 在以后的开发中如果出现反复拼字符串不能使用Sring+ 如果需要反复拼接字符串,用StringBuffer trim()只会去掉两边、static:final 常量 1.修饰变量,变量存储在静态存储区,被多个实例共享,可以用类名直接访问 静态变量是跟随类的加载二加载 ,生命周期是跟随类一起创建和消亡= 2.可以修饰方法:静态方法可以使用类名直接调用。一般工具类中的方法都是静态的使用。 静态方法是跟随类的加载二加载 。不能有this关键。当静态函数加载的时候this对应实例还没创建。 静态方法不能访问非静态的变量 static 还可以修饰代码块 普通代码块比构造函数先执行,每次创建实例都可以执行。 静态代码块只执行一次并且比普通代码块更先执行。 静态代码块中也不能访问非静态变量 设计模式: 为了解决经常遇到的问题,总结经验形成的固定模式。单列设计模式: ①饿汉式: 1:把构造函数私有化(静态)2:写静态函数(可以被类名直接调用) ②懒汉式: 1:第一次使用的时候创建 对象之间的关系: 继承 1.Java中的继承都是单继承,每个子类只能有一个父类。 2.Java中可以多层继承。 3.父类中的私有变量不能被子类继承但属性可以 4.方法的覆写(重写父亲的方法,就近原则) 5.super(当子类要调用父类的方法) 6.自己掉用自己用(this,(XX)) 7.当子类创建实例时父类的构造函数也会被调用。 super()可以调用父类中对应参数的构造函数,必须要放在第一行
final 关键字: 1.可以修饰变量,变量就变成常量 2.可以修饰函数,函数就不能被重写 3.可以修饰类,类就不能被继承 匿名对象实例,适用于只用一次的情况 注意:区分重载(在同一个类中的函数只有参数的个数和类型不同)和重写(子类重新覆盖父类中的函数,功能的扩展)。 抽象类:(abstract:抽象函数,抽象方法) 1.不能实例化,但是有构造函数。 2.专门当父类 3.子类继承了抽象类就必须实现抽象类中所有的抽象方法。 4.抽象类中可以用实现好的方法。 5.抽象类又是普通类的模板。接口: 1.本质就是标准 2.只能有常量,和抽象方法。 3.Java中类可以实现多个接口 4.Java中接口和接口之间可以多继承。 5.在实际开发中如果既可以接口又可以用抽象类,用接口,因为接口可以多实现更有利于代码的扩展。 由于接口 中只有常量和抽象方法,所以可以不写 public final