您好、欢迎来到现金彩票网!
当前位置:ds视讯 > 封装器 >

Java中构造器与封装冲突么?

发布时间:2019-07-26 00:18 来源:未知 编辑:admin

  比如我写了一个person类,我把姓名和年龄都设置成private,然后我做一个构造器,对象拥有两个属性,年龄和姓名。然后我分别写两个方法一个get和一个set。新创建一个测试类,在主程序中...

  比如我写了一个person类,我把姓名和年龄都设置成private,然后我做一个构造器,对象拥有两个属性,年龄和姓名。然后我分别写两个方法一个 get 和一个set 。 新创建一个测试类,在主程序中创建对象,失败,无论怎样创建都是失败。原因是因为没法表达属性如:

  二:继承到底是什么意思, 子类可以调用父类的方法,获得父类的实例变量,我不继承,我随意创建一个类然后new一个想要继承的类的对象,调用就好了么。

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

  第一次失败是因为你的构造方法的问题。如果你不定义构造方法,那么你的类会有一个默认的构造方法,没有参数,即Person(){}。当你自己显示定义了构造方法的时候,这个构造方法将不再存在,你的Person类将只保留你自己定义的构造方法。于是,因为你只定义了一个有参数的构造方法,而没有定义无参数的构造方法,所以你写newPerson()就会出错。因为你的类没有这样的方法。所以这里我们一般的做法是,在定义有参构造方法的同时,也写一个无参的构造方法,使没有参数的情况下我们依然可以实例化一个对象。

  最后一段,看起来好像没问题,然后我试了一下,亲测有效,不明白为什么会失败。

  封装和构造器不冲突。其实我也不知道你在问什么,但是所有bean(或者叫model)都是这样写的,没有问题。

  继承就是子类拥有父类的一切。相当于你复制粘贴了一个类出来。如果你想要两个相似的类,第二个比第一个多一点点东西,这样的话就可以继承之后,在子类里添加多的那一点点东西就可以了,而不用把整个类再写一遍。同时继承在一些方法调用的情况下还有很方便的地方。

  抽象就是只声明而不定义方法。抽象类就是含有抽象方法的类。多态是一个方法在不同对象中表现出不同的作用,是通过抽象实现的。

  同一个方法doSomething()在不同的对象调用时有不同的表现,这就是多态了。很多情况下多态没有extends关键字,而是implements了一些接口,其实原理是一样的。

  Java里每个类只能有一个父类,也就是不能继承一个以上的类,于是接口就是为了实现多继承而存在的。又因为接口本身就是抽象的,所以究其根本,通过接口实现多态,也还是通过了抽象来实现的。追问感谢你的回答,我就是返回头来又看面向对象,发现构造方法,继承,多态,还有抽象概念有点混淆。自己连续打了好几个代码全部失败,很是郁闷。所以链接了自已的思路写了一遍。

  构造方法本事就是为了方便创建对象而用的,如果把它设成private,在其他类中创建该类的对象很不方便。

http://login4porn.com/fengzhuangqi/599.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有