关于java:14-基础知识

42次阅读

共计 701 个字符,预计需要花费 2 分钟才能阅读完成。

重载就是同样的一个办法可能依据输出数据的不同,做出不同的解决

重写就是当子类继承自父类的雷同办法,输出数据一样,但要做出有别于父类的响应时,你就要笼罩父类办法

java 和 c ++ 区别

  • 都面向对象,反对封装,继承,和多态
  • java 不提供指针间接拜访内存,程序内存更加平安
  • java 类是单继承的,c++ 类能够多继承,java 接口能够多继承
  • java 有主动内存治理垃圾回收机制,不须要手动开释无用内存
  • c++ 同时反对办法重载和操作符重载,java 只反对办法重载

java 中只有值传递,办法失去的是所有参数值的拷贝,不能批改传递给他的任何参数变量的内容。
对象变量就不一样了。

成员变量和局部变量的区别

  • 成员变量属于类,会被赋予初值,能够被 public static 等修饰符润饰,属于对象,生命周期随对象生死,存在堆内存。
  • 局部变量是代码块中定义的,不会被赋予初值,只能被 final 润饰,生命周期随办法执行生死,存在栈内存。

继承

  • 子类继承父类所有的属性和办法
  • 子类能够有本人的属性和办法
  • 子类能够重写父类的属性和办法

多态

  • 援用类型变量收回的办法调用的到底是哪个类的办法,在程序运行期间能力确定
  • 多态不能调用“只在子类存在,在父类不存在的办法”
  • 如果子类覆写了父类的办法,执行的是子类的办法,否则执行的是父类的办法

string 为什么是不可变得

  • string 中应用 final 润饰字符数组来保留字符串,private final char[] value,是常量,线程平安。
  • stringBuilder 和 stringBuffer 也应用字符数组然而没有用 final 润饰,所以可变。stringBuffer 对办法加了同步锁,线程平安 stringBuilder 非线程平安。
正文完
 0