当前位置: 首页 > news >正文

莱西网站网站建设个人做网站猛赚钱

莱西网站网站建设,个人做网站猛赚钱,wordpress 用户密码加密方式,全是广告的网站文章目录 可见性修饰符#xff08;访问修饰符#xff09;成员变量都应该是 private构造方法可以是 private 的public 修饰的东西尽量不要改动非 public 的类#xff0c;类名可以不和文件名相同protected 继承专属的访问控制 可见性修饰符#xff08;访问修饰符#xff09;… 文章目录 可见性修饰符访问修饰符成员变量都应该是 private构造方法可以是 private 的public 修饰的东西尽量不要改动非 public 的类类名可以不和文件名相同protected 继承专属的访问控制 可见性修饰符访问修饰符 可见性修饰符用在 类、成员方法、构造方法、静态方法、静态变量和成员变量上其可见性的范围是一样的。 只有 局部变量 和 参数 没有访问控制符。所有可能被分享的被使用到别的地方的都可以使用访问修饰符来控制可被访问的程度。 public 全局可见对所有包都可见缺省当前包可见private当前类可见protected【专门为继承打造】缺省default 对子类可见 注意 private 与 protected 不能用于修饰类与接口。缺省 虽然可以用于修饰类但是仅仅是对包中的其他类可见不同的包的类并不能实现通过 import 来导入这个类也无法继承这个类。 成员变量都应该是 private 成员变量应该都声明为 private。 如果要读写这些成员变量最好使用 get、set 方法这些方法应该是 public 的。这样的好处是如果有需要可以通过添加一些条件判断的代码检查每个属性值是否合法。 构造方法可以是 private 的 构造方法如果是 private 的那么就只有当前的类可以调用这个构造方法。 有些时候会把所有的构造方法都定义成 private 的然后使用静态方法调用构造方法因为该静态方法是 public 的可以被别的类调用而该静态方法又和 private的构造方法是同一个类中可以调用该构造方法所以就等于通过 public 的静态方法调用了 private 的构造方法。 这样的好处是可以通过代码检查某个属性值是否合法。等于加了一层过滤在静态方法中做一些判断避免直接使用构造方法创建属性是非法的实例。虽然在构造器中也可以加过滤语句但实际上调用构造器时已经在建造实例了也已经创建出来了只是在赋值时作过滤而如果是在静态方法中作过滤则直接就不会去调用构造器去生成非法实例 public class TestClass{private TestClass(String name,int age){ // 将构造方法设置为 privatethis.name name;this.age age;}public static TestClass createObj(String name,int age){ // 将静态方法设置为 publicif(age0){ // 这样可以加一层过滤避免传递非法值构建非法实例return null;}else{// return this(name,age); // 并不能调用 this()否则报错因为 this只能出现在构造器中并且必须是构造器的第一行代码。这里只是一个静态方法无法调用this()return new TestClass(name,age);}} }// 调用方 import com.test.TestClass;public class TestUse{public static void main(String[] args){TestClass a createObj(Tom,13); // 调用 public 的静态方法来返回一个 TestClass 实例对象} }public 修饰的东西尽量不要改动 public 的方法类似一种约定因为 public 就意味着外面的代码可以使用这个方法也就意味着你不能再对这个方法随意更改比如不应该更改方法的签名、返回值但可以优化方法体内的代码逻辑因为一旦修改可能外面的代码就可能要跟着修改否则会出现错误。 所以尤其是某些 java 的常用类其中定义的方法会很小心地使用 public。我们知道成员变量都应该定义成 private然后再用 public 的方法去操作它们。但很多类内部的操作不需要外部去使用的也可以定义成 private。定义成 public 的话你就得保证这个方法在往后不同的 java 版本中它的方法签名、返回值不能变否则就可能出很多问题。 public 方法是我们确定可以长期对外提供功能的。访问修饰符的目的不仅仅是为了限制别人的使用更加是为了规范地提供一套稳定的方法供别人使用。 而对于 private 的方法因为类外面调用不到所以无论怎么改也不会影响直接影响类外面的代码。 非 public 的类类名可以不和文件名相同 非 public 的类类名可以不和文件名相同。但因为是非 public这个类最多就只能被同一个包中的其他类所引用。 疑问1 一个 java class 文件中是否可以包含多个 class 经过实验一个 java class.java 文件中是可以同时包含/定义多个类的但只能有一个公共类并且只要有公共类public class这个class 文件的文件名就得和这个公共类名一摸一样大小写一致可以有如下两个情况 只有一个公共类TestClass 文件包含class A、class B、public TestClass、class C、… 这种还比较常见比如说 java 自带的 Math.java 文件包含了 public class Math同时还包含了多个非公共类当然这些类都是相关的服务于 Math 类的。 没有公共类Test 文件包含class A、class B、TestClass、class C、… 疑问2 main 方法只能出现在公共类中么同一个文件如果可以包含多个类是否也可以包含多个 main 方法 经过实验main 方法既可以出现在公共类public中也可以出现在非公共类中。并且一个 .java文件中可以同时有多个 main 方法每个类拥有一个 main 方法哪怕是这个.java 文件同时包含一个公共类与多个非公共类在 IEDA 中将鼠标定位到哪个类右键就可以选择执行相应类的 main 方法。 protected 继承专属的访问控制 protected 可见性default 对子类可见。 即对同一个包可见且对子类可见即便子类不在同一个包 // org.test.A 包中 public class A{protected int age 10;String name Tom; }// org.test 包中 public class B extends A{ // 多做一层继承是为了说明 protected 可见的子类是所有子类而非仅仅是直接子类}// org.test 包中 public class C extends B{public void getAge(){System.out.println(this.age);} // 若不注释下面的 getName 方法编译时会报错因为找不到 this.name 属性因为 name 是缺省访问修饰符只能同一个包中可见。 // public void getName(){ // System.out.println(this.name); // } }// org.test 包中 // 调用类 public class TestUse{public static void main(String[] args){C c new C();c.getAge(); // 10System.out.println(c.age); // 报错因为 TestUse 既不是 A 的子类也不和 A 在同一个包中所以无法看到 protected 修复符定义的 .age 属性。} }// 若将调用类 TestUse 移动到 org.test.A 包中 public class TestUse{public static void main(String[] args){C c new C();c.getAge(); // 10System.out.println(c.age); // 10} }子类覆盖父类的方法不可以用可见性更低的修饰符但是可以用更高的修饰符。 public protected default缺省 private 不能用可见性更低的修饰符来覆盖的原因 public class A{protected void sayHi(){System.out.println(调用的是 A 的 sayHi);} } public class B extends A{private void sayHi(){System.out.println(调用的是 B 的 sayHi);} } public class TestUse{public static void main(String[] args){A a new B();a.sayHi(); // 此时因为覆盖实际调用的应该是 B 中定义的 sayHi。但现在 B 中定义的 sayHi 却是 private即无法被其他类访问这就与多态冲突了。} }既然你覆盖了父类方法父类的引用在指向你这个对象实例的时候就要访问你覆盖父类的这个方法如果你此时访问修饰符让我访问不了这样就矛盾了。所以你非要用可见性更低的访问修饰符来覆盖java 就直接给你报错。 所以若用 protected 来修饰方法则子类若想覆盖该方法需要至少是 protected或者 public。
http://www.dnsts.com.cn/news/128460.html

相关文章:

  • 资阳建网站wordpress信息搜集
  • 有些网站做不了seo二次开发收费需要高点
  • 上海网站建设 zl什么设计网站好
  • 有什么做外贸的好网站摄影设计方案
  • 一般做网站什么价格网站建设全
  • 为什么做企业网站wordpress 本地服务器
  • 广州市黄埔区建设局网站百度扫一扫识别图片
  • 好看的网站首页特效制作百度移动网站模板免费下载
  • 展示型网站的特点asp网站 上传空间
  • 介绍营销的网站松原公司做网站
  • 网站文章正文可以做内链吗wordpress 联盟插件怎么用
  • 别人帮我做的网站没用要交费用吗wordpress分类目录不显示
  • 装修推广网站哪个好做视频网站每部电影都要版权
  • 网站建设订流量什么意思淘客网站添加到桌面
  • 政协网站法治建设版块番禺人才招聘网
  • 网站制作的内容什么好学校网站设计
  • 网站制作成app凡客诚品科技有限公司
  • 推销别人做网站有什么作用上海网站排名提升
  • 山西太原建站哪家弿建立网站第一步是什么
  • wamp做的网站标签图标给我免费播放的电影在线观看
  • 论坛网站搭建陕西省城乡建设网站
  • 互联网官方网站网站建设类公司排名
  • 深圳网站建设一尘互联网页设计难学吗有技术含量吗
  • 金华安全网站建设怎么收费廊坊百度快照优化
  • 珠海专业医疗网站建设离我最近的物流公司
  • Gzip 网站 能够压缩图片吗在线搭建网站
  • 网站建设什么最重要可视化网页开发
  • 网站建设项目确认书毕节网站怎么做seo
  • 广东省建设注册执业资格中心网站网站域名改版怎么做
  • 郑州网站制作需要多少钱wix网站怎么做