山那边是海 发表于 2015-1-18 11:13:02

发布一篇谈谈Java中protected会见权限

C#是盗用了Java的源代码,仿照开发的,原因是Java是开源的啊,盗了也白盗,还有一点,开发C#语言的团队是就是开发Java语言的团队,是微软重金挖过去的啊
来谈谈protected会见权限成绩。看上面示例1:
Test.java
classMyObject{}
publicclassTest{
  publicstaticvoidmain(String[]args){
   MyObjectobj=newMyObject();
   obj.clone();//Compileerror.
  }
}
此时呈现上文提到的毛病:ThemethodclonefromthetypeObjectisnotvisiuable.
我们已分明Object.clone()是protected办法。这申明,该办法能够被同包(java.lang)下和它(java.lang.Object)的子类会见。这里是MyObject类(默许承继java.lang.Object)。
一样Test也是java.lang.Object的子类。可是,不克不及在一个子类中会见另外一个子类的protected办法,只管这两个子类承继自统一个父类。
再看示例2:
Test2.java
classMyObject2{
  protectedObjectclone()throwsCloneNotSupportedException{
   returnsuper.clone();
  }
}
publicclassTest2{
  publicstaticvoidmain(String[]args)throwsCloneNotSupportedException{
   MyObject2obj=newMyObject2();
   obj.clone();//CompileOK.
  }
}
这里,我们在MyObject2类中掩盖(override)父类的clone()办法,在另外一个类Test2中挪用clone()办法,编译经由过程。
编译经由过程的缘故原由不言而喻,当你在MyObject2类中掩盖clone()办法时,MyObject2类和Test2类在统一个包下,以是此protected办法对Test2类可见。
剖析到这里,我们在回想一下Java中的浅复制与深复制文中,章节2.2中的声明,②在派生类中掩盖基类的clone()办法,并声明为public。如今分明这句话的缘故原由了吧(为了让别的类能挪用这个类的clone()办法,重载以后要把clone()办法的属性设置为public)。
上面再来看示例3:
Test3.java
package1
classMyObject3{
protectedObjectclone()throwsCloneNotSupportedException{
   returnsuper.clone();
  }
}
package2
publicclassTest3extendsMyObject3{
  publicstaticvoidmain(Stringargs[]){
   MyObject3obj=newMyObject3();
   obj.clone();//Compileerror.
   Test3tobj=newTest3();
   tobj.clone();//ComplieOK.
  }
}
<p>
Java的B/s开发是通常是javaweb开发,又叫J2EE开发,J2SE是手机开发。C#的C/s和B/s开发是说.net和Asp开发。。u在这里说明一点;资深一点的Java和C#程序员都明白一点

愤怒的大鸟 发表于 2015-1-20 17:18:20

应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展

莫相离 发表于 2015-1-23 07:45:19

《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。

若天明 发表于 2015-1-25 17:36:37

你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。

透明 发表于 2015-2-3 12:14:03

是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能

第二个灵魂 发表于 2015-2-8 21:29:37

是一种将安全性(Security)列为第一优先考虑的语言

深爱那片海 发表于 2015-2-15 21:46:22

设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧

活着的死人 发表于 2015-2-25 20:48:55

我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。

飘灵儿 发表于 2015-3-6 06:22:26

在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。

分手快乐 发表于 2015-3-12 21:28:19

是一种突破用户端机器环境和CPU
页: [1]
查看完整版本: 发布一篇谈谈Java中protected会见权限