类、对象、方法中常见问题

来源:互联网 发布:淘宝卖宠物用品怎么样 编辑:程序博客网 时间:2024/06/03 11:18

1、接口中可以声明常量,可以声明抽象方法,也可以继承父类接口,就是不能有具体实现。

      接口是一种契约,不仅仅约束着实现者,同时也是一种保证,保证提供服务(常量、方法)是稳定、可靠的,如果把实现代码写到接口中,那接口就绑定了

     可变化的因素,这就会导致实现不再稳定可靠,是随时可能被抛弃、被更改,被重构,所有虽然接口中可以有实现,但是避免使用

2、静态变量一定要先声明后赋值

     静态变量是类加载时被分配到数据区的,它在内存中只有一个拷贝,不会被分配多次,其后的所有赋值操作都是值的改变,则地址不变。

    JVM初始化变量是先声明空间再赋值的,静态变量实在类初始化时,首先被加载,JVM会去查找类中的所有静态

   声明,然后分配空间,这时候只是完成了地址空间的分配,还没有赋值,之后JVM会根据类中静态赋值(静态类赋值和

  静态代码块赋值的先后顺序来执行)

3、不要覆写静态方法.

4、构造函数尽量简化

5、避免在构造函数中初始化其他类

6、使用构造代码块精炼程序

  a、普通代码块

     就是在方法后面使用{}括起来的代码片段,它不能单独执行,必须通过方法名调用执行。

  b、静态代码块

   在类中使用static修饰,并用{} 括起来的代码片段,用于静态变量的初始化或对象创建前的环境初始化。

  c、同步代码块

   使用synchronized关键字修饰,并使用{}括起来的代码片段,它表示同一时间只能有一个线程进入到该方法中,是多

   线程的一种保护机制。

  d、构造代码块

在类中没有任何前缀后缀,并用{}括起来的代码片段。


构造代码块会在每个构造函数的最前端插入。先执行构造代码块,然后再执行其他代码,构造代码块会在每个构造函数内执行,它依托于构造函数执行。


使用场景:1、初始化实例变量,初始化实例环境。


7、使用静态内部类提高封装性。
   java中的嵌套类(Nested Calss)分为两种  :静态内部类(也叫静态嵌套类,static Nested Calss )和内部类(Inner Class)




0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 红米手机密码忘了怎么办数字锁 红米1s忘了密码怎么办 红米手机下面三个键失灵怎么办 红米note手机没声音了怎么办 魅蓝3s被锁了怎么办 小米5x的4g网速慢怎么办 红米一体机与后盖有裂缝怎么办? 红米4x喇叭坏了怎么办 红米4x电池坏了怎么办 小米电视4a开不了机怎么办 小米x4手机下面三个键失灵怎么办 红米4a一直重启怎么办 红米4a手机一直关机重启怎么办 红米5A手机4G信号差怎么办 红米4x手机黑屏打不开怎么办 红米手机前置摄像头用不了怎么办 红米4a手机电池不耐用怎么办 红米6全网通联通网络不好怎么办 红米手机死机了怎么办不可拆卸电池 厦华电视指示灯亮但打不开机怎么办 oppo一体机的开机键坏了怎么办 小米手机长时间没用开不了机怎么办 红米2a充电坏了怎么办? 红米手机恢复出厂设置失败怎么办 红米关机强行恢复出厂失败怎么办 红米2a太卡了怎么办 红米2a上网好卡怎么办 红米1内部存储空间坏了怎么办 红米3s开关机键失灵怎么办 红米3s下面三个键失灵怎么办 红米3s手机掉水怎么办 红米手机用久了卡怎么办 红米4x手机不支持计步怎么办 红米4x手机耗电快怎么办 红米4a一体机手机死机怎么办 红米4x打王者卡怎么办 红米5 4g信号不稳定怎么办 红米3x玩游戏卡顿怎么办 红米3开不了机了怎么办 苹果手机装了sim卡没反应怎么办 小米手机打电话的图标没了怎么办