07-31 面向对象

来源:互联网 发布:淘宝评论怎么评论内容 编辑:程序博客网 时间:2024/06/05 22:56

String比较是否相等

        String s1=new String("asd");        String s2=new String(new char[]{'a','s','d'});        String s3="asd";        String s4="asd";        System.out.println(s1==s2);//比较的是地址        System.out.println(s1.equals(s2));//比较的是内容        System.out.println(s3==s4);//都是从缓冲区中读取的,如果没有,创建,缓冲区中存放的都是String 类型

简单数据类型和封装类比较是否相等

        int i=10;        int j=10;        int h=new Integer(10);     //自动拆箱        Integer m=new Integer(10);        Integer n=new Integer(10);        Integer k=10;              //自动装箱        System.out.println(i==j);//简单数据类型和简单数据  true        System.out.println(m==n);//封装类和封装类         false        System.out.println(i==m);//简单数据类型和封装类    true        System.out.println(m==k);//封装类和装箱           false        System.out.println(i==k);//简单数据类型和装箱      true        System.out.println(i==h);//简单数据类型和拆箱      true        System.out.println(m==h);//封装类和拆箱           true        System.out.println(h==k);//拆箱和装箱             true

方法重写

public class Person {    public void sleep(){        System.out.println("在家睡觉");    }}public class Student extends Person{    public void sleep(){        System.out.println("在学校睡觉");    }}public class Text {    public static void main(String[] args) {        Person person=new Person();        person.sleep();        Student student=new Student();        student.sleep();    }}

方法重载

public class Dog extends Animal {    public void voice() {        System.out.println("汪汪");    }    public void voice(String name) {        System.out.println("看见" + name + "立刻就咬");    }    public void voice(int age){        if(age<18){            System.out.println("摇尾巴");        }else{            System.out.println("走开");        }    }public class Text {    public static void main(String[] args) {        Dog dog=new Dog();        dog.voice();        dog.voice("john");        dog.voice(14);        dog.voice(21);    }}

强制类型转换

public class Animal {    public void voice(){        System.out.println("动物叫");    }}public class Dog extends Animal {    public void voice() {        System.out.println("汪汪");    }     public void voice(String name) {        System.out.println("看见" + name + "立刻就咬");    }}public class Text {    public static void main(String[] args) {        Animal animal1=new Animal();        Animal animal2=new Dog();        animal1.voice();        animal2.voice();        if(animal2 instanceof Dog){            ((Dog)animal2).voice("tom");        }else{            System.out.println("animal2不是Dog");        }

instanceof static final

instanceof   //Animal是父类,Dog是子类。             //用来在运行时指出对象是否是特定类的一个实例       if(animal2 instanceof Dog){            ((Dog)animal2).voice("tom");        }static  //成员共有的属性或方法    public static int eyeNum=2;    public static void run(){        System.out.println("狗跑的很快");    }final   1.修饰类:不能被继承,不能有子类   2.修饰方法:不能被重写   3.修饰变量:不能改变,不能被重新赋值      静态常量:全部用大写,中间用下划线隔开

Object 祖类

**toString()**   public class Animal {      public void voice(){        System.out.println("动物叫");      }   }   public class Dog extends Animal {      @Override      public String toString() {        return "boy";      }   }   public class Text {    public static void main(String[] args) {       Dog boy=new Dog();       System.out.println(boy);    }   }**equal()**   public class Student{       public int id;       public String name;       public int getId() {          return id;       }       public void setId(int id) {          this.id = id;       }       public String getName() {          return name;       }       public void setName(String name) {          this.name = name;       }      @Override      public boolean equals(Object obj) {        boolean isSame=false;        if(obj!=null){            if(obj instanceof Student){                isSame=((Student)obj).id==this.id;            }        }        return isSame;      }  public class Test {    public static void main(String[] args) {        Student zhangsan=new Student();        zhangsan.setId(001);        zhangsan.setName("张三");        Student lisi=new Student();        lisi.setId(001);        lisi.setName("张思");        System.out.println(zhangsan==lisi);        System.out.println(zhangsan.equals(lisi));    }  }**hashCode()**   Dog boy=new Dog();   System.out.println(boy);   System.out.println(boy.hashCode()); 输出:com.animal.Dog@19e0bfd      27134973  //19e0bfd的十进制表示

类型、进制转换

**类型转换**   //将字符串类型转换成数字类型   String str="123";   System.out.println(Integer.parseInt(str)+3);**进制转换**   //将十六进制转换成十进制   String str="A1";   System.out.println(Integer.parseInt(str, 16));
0 0
原创粉丝点击