关于c++与java在面向对象方面的一些不同的疑问 你还是找本书看一下吧C程序员学Java会很快,但一点书也不看还是不行的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 publicprotected无privatejava都有 public private protected java都有的什么都不加是默认package级的访问级别. java中的访问级别为 public : 所有人都可以访问它。 friendly : 只有同包的才可以用。 protected : 只有继承的子类才可以访问。 private : 谁都不可以访问,只能自己用。 java中类的访问级别修饰符有3种:public、default(无修饰符)、privatepublic:表示任何地方都可以访问该类;default:同一个package下所有类都可以访问该类;private:这个修饰符只能用于内嵌类,只能被包容它的类访问;c++在这方面与java有点区别,除了内嵌类之外,c++的类没有访问级别修饰符,内嵌类的的访问修饰符其实与成员的修饰符一样;c++中继承方式有4中:public、protected、default(无修饰符)、privatepublic继承:子类可访问父类的public和protected成员,子类的子类也可以;外部类也可以访问父类的pubic成员;protected继承:子类可访问父类的public和protected成员,子类的子类也可以;但外部类不能访问父类的任何成员;private继承:子类可访问父类的public和protected成员,子类的子类不可以,外部类也不可以;default继承:同private;还有一种virtual继承,与访问级别无关,我不太清楚,请高手指点。 java中的继承方式只有一种:public,与c++的public继承相同。 Java_core说的比较清楚,可以看一下 都有。 private必须是内部类时才可用。外部类如果时private的,别人没法访问了。 所以,编译器不允许通过。方法、成员和C++一样,只是写法有点差异。这3个修饰符的含义,到处都有介绍。 继承的规则是子类应该更具体,所以,不允许削弱原有函数的访问权限。就是说,不能把super类的public函数,重载为private的。但,反过来可以。总之,不能降低。 java中这public,protected,private种类型是有的,不过类好象不能定义成protected,private类型。 和 c++ 的阿public 和 private是一样的 关于java的限定访问权限的修饰符public:所有的类均可访问,但其他包中的类访问时要import缺省:只有同一个包中的类可访问private:只有该类本身可访问,级别最高protected:同一包中的类或其他包中的子类可访问private protected:只有子类可访问 我初学Java,以前学过一些C++,我最近在作C++与Java这间的比较,并把不同之处记录下来,写成心得。如果各位有兴趣一起学习,发邮件给我,我的心得双手奉上,并诚邀一同完成。[email protected]如下是我作的关于继承权限的比较:C++中,继承有三种方式:1 公有继承:class NewClass : public OldClass对于派生类:基类的公有成员和保护成员可见,基类的私有成员在派生类中不可见;对于派生类对象:基类的公有成员可见,基类的其他成员不可见。2 私有继承:class NewClass : private OldClass对于派生类:基类的公有成员和保护成员可见,基类的私有成员不可见;对于派生类对象:基类的所有成员不可见。3 保护继承:class NewClass:private OldClass对于派生类:基类的公有成员和保护成员可见,基类的私有成员不可见;对于派生类对象:基类的所有成员不可见。保护继承就是把基类作为一个保护的成员放进派生类里,在派生类里,基类相当于public 型,其开放的部分是可以访问的。对派生类来说,被保护的成员在其对象中是不可访问的,所以派生类的对象中,基类的一切成员都不可访问。当不明确表示是什么方式时,缺省的继承方式是private,但可以把基类中的公有成员或保护成员说明为派生类的公有成员供派生类的对象调用。#include <iostream.h>;class A {public: void f() { cout << "A::f()" << endl; }};class B: A {public: A::f;};void main () { B b; b.f();}Java中,继承只有一种方式:Class NewClass extends OldClass派生类可以访问基类的公有成员和保护成员,不可访问私有成员;派生类的对象可以访问基类对象的公有成员和保护成员,不可访问私有成员。Java的继承相当于C++中的公有继承 mysql数据库安装问题 [java新手]一道递归语句题目 java 实现局域网广播通信的问题 tomcat导常,寻解决方案 有关JAVA的数据库操作 【求助】关于 LinkedList 的一个问题 (不胜感激啊。。。) java 一道可能很简单的题(我菜鸟) 求Java in Nutshell电子书,中英文都可以,多谢了 绝对地送分。。。。android字符串顺序问题 如何用Robot抓取屏幕图象? 这个注册应该怎么做?? 请教String
protected
无
private
java都有
什么都不加是默认package级的访问级别.
public : 所有人都可以访问它。
friendly : 只有同包的才可以用。
protected : 只有继承的子类才可以访问。
private : 谁都不可以访问,只能自己用。
public:表示任何地方都可以访问该类;
default:同一个package下所有类都可以访问该类;
private:这个修饰符只能用于内嵌类,只能被包容它的类访问;c++在这方面与java有点区别,除了内嵌类之外,c++的类没有访问级别修饰符,内嵌类的的访问修饰符其实与成员的修饰符一样;c++中继承方式有4中:public、protected、default(无修饰符)、private
public继承:子类可访问父类的public和protected成员,子类的子类也可以;外部类也可以访问父类的pubic成员;
protected继承:子类可访问父类的public和protected成员,子类的子类也可以;但外部类不能访问父类的任何成员;
private继承:子类可访问父类的public和protected成员,子类的子类不可以,外部类也不可以;
default继承:同private;还有一种virtual继承,与访问级别无关,我不太清楚,请高手指点。
方法、成员和C++一样,只是写法有点差异。这3个修饰符的含义,到处都有介绍。
public:所有的类均可访问,但其他包中的类访问时要import
缺省:只有同一个包中的类可访问
private:只有该类本身可访问,级别最高
protected:同一包中的类或其他包中的子类可访问
private protected:只有子类可访问
如下是我作的关于继承权限的比较:C++中,继承有三种方式:
1 公有继承:
class NewClass : public OldClass
对于派生类:基类的公有成员和保护成员可见,基类的私有成员在派生类中不可见;
对于派生类对象:基类的公有成员可见,基类的其他成员不可见。
2 私有继承:
class NewClass : private OldClass
对于派生类:基类的公有成员和保护成员可见,基类的私有成员不可见;
对于派生类对象:基类的所有成员不可见。
3 保护继承:
class NewClass:private OldClass
对于派生类:基类的公有成员和保护成员可见,基类的私有成员不可见;
对于派生类对象:基类的所有成员不可见。保护继承就是把基类作为一个保护的成员放进派生类里,在派生类里,基类相当于public 型,其开放的部分是可以访问的。对派生类来说,被保护的成员在其对象中是不可访问的,所以派生类的对象中,基类的一切成员都不可访问。当不明确表示是什么方式时,缺省的继承方式是private,但可以把基类中的公有成员或保护成员说明为派生类的公有成员供派生类的对象调用。#include <iostream.h>;class A {
public:
void f() {
cout << "A::f()" << endl;
}
};class B: A {
public:
A::f;
};void main () {
B b;
b.f();
}
Java中,继承只有一种方式:
Class NewClass extends OldClass
派生类可以访问基类的公有成员和保护成员,不可访问私有成员;
派生类的对象可以访问基类对象的公有成员和保护成员,不可访问私有成员。
Java的继承相当于C++中的公有继承