我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:2019跑狗图高清彩图 > 运行多态 >

求答案、、java里面对象不允许直接访问类中的属性对了没有?

归档日期:08-11       文本归类:运行多态      文章编辑:爱尚语录

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  ②运行时多态:指一个对象可以具有多个类型。 ainmal.sleep();

  Animal a=new Dog();查看格式名称;(编译时看左边,运行时看右边)

  2、 对于对象的调用只能限于编译时类型的方法,如调用运行时类型方法报错。

  对于语句:Dog d=(Dog)a。将d强制声明为a类型,此时d为Dog(),此时d就可以调用运行时类型。注意:a和d指向同一对象。属性看父类,方法看子类.

  3、 在程序的运行时,动态类型判定。运行时调用运行时类型,即它调用覆盖后的方法。

  上面语句是判定a是否可以贴Animal标签。如果可以贴则返回true,否则返回false。

  Instanceof一般用于在强制类型转换之前判定变量是否可以强制转换。

  不直接访问的话 把变量全部设为private(私有的) 然后构建这些属性的get 和SET方法 操作属性的时候调用get 和set 方法即可

  java中变量有4中访问权限,public(完全公开透明),private(私有,只有本类中可以看到和使用),default(默认,这个就是你什么都不写的情况下,也就是你写的代码的情况,本类和本包中可以看到和使用,因为你写的这两个类在同一个包里面,所以TestPersonDemo2类可以访问Person类中的属性),protect(本类和不同包的子类可以看到和使用) 如果是属性一定要用private来封装!!然后在类中用公共方法来访问和设置他们的值!!

  你指的是不是java中的封装,封装是把类属性设置成private私有的,给属性写public公有的get和set方法,这样就不能直接访问对象属性,只能通过get获取或set设置值。封装的好处可增加安全性,例如,让对象只读,就把get方法设置成public,set方法设置成private或不写。是不是这个意思?

  展开全部你把对象里面的方法或变量设置成静态的方法或变量 比如:static String name ;

本文链接:http://myclayclub.com/yunxingduotai/308.html