娄底网站建设公司,前端开发软件哪个最好,上海企业工商查询,去广告店当学徒有用吗1.面向对象的特征有哪些方面? 主要有封装,继承,多态,也可以加上个抽象. 封装 封装是保证软件部件具有优良的模块性的基础,封装的目标就是要实现软件部件的高内聚,低耦合,防止程序相互依赖性而带来的变动影响.在面对对象的编程语言中,对象是封装的最基本的单位,面向对象的封装比…1.面向对象的特征有哪些方面? 主要有封装,继承,多态,也可以加上个抽象. 封装 封装是保证软件部件具有优良的模块性的基础,封装的目标就是要实现软件部件的高内聚,低耦合,防止程序相互依赖性而带来的变动影响.在面对对象的编程语言中,对象是封装的最基本的单位,面向对象的封装比传统语言的封装更为清晰,有力.面向对象的封装就是把一个对象的属性和行为的代码封装在一个模块中,也就是一个类中,属性用变量定义,行为用方法进行定义,方法可以直接访问同一个对象中的属性.通常情况下,只要记住让变量和访问这个变量的方法放在一起,将一个类中的成员变量全部定义成private,只有这个类自己的方法才可以访问到这些成员变量,这就基本上实现对象的封装.就很同意找出要分配带这个类上的方法来,就基本上算是会面向对象的编程了.把握一个原则,:把对同一事物进行操作的方法和相关的方法放在同一个类中,把方法和他操作的数据放在同一个类中. 例如人要在黑板上画圆这一共涉及三个对象人、黑板、圆画圆的方法要分配给哪个对象呢由于画圆需要使用到圆心和半径圆心和半径显然是圆的属性如果将它们在类中定义成了私有的成员变量那么画圆的方法必须分配给圆它才能访问到圆心和半径这两个属性人以后只是调用圆的画圆方法、表示给圆发给消息而已画圆这个方法不应该分配在人这个对象上这就是面向对象的封装性即将对象封装成一个高度自治和相对封闭的个体对象状态属性由这个对象自己的行为方法来读取和改变。一个更便于理解的例子就是司机将火车刹住了刹车的动作是分配给司机还是分配给火车显然应该分配给火车因为司机自身是不可能有那么大的力气将一个火车给停下来的只有火车自己才能完成这一动作火车需要调用内部的离合器和刹车片等多个器件协作才能完成刹车这个动作司机刹车的过程只是给火车发了一个消息通知火车要执行刹车动作而已。 抽象 抽象就是找出一些事物的相似和共性之处然后将这些事物归为一个类这个类只考虑这些事物的相似和共性之处并且会忽略与当前主题和目标无关的那些方面将注意力集中在与当前目标有关的方面。例如看到一只蚂蚁和大象你能够想象出它们的相同之处那就是抽象。抽象包括行为抽象和状态抽象两个方面。例如定义一个Person类如下 classPerson { String name; int age; } 人本来是很复杂的事物有很多方面但因为当前系统只需要了解人的姓名和年龄所以上面定义的类中只包含姓名和年龄这两个属性这就是一种抽像使用抽象可以避免考虑一些与目标无关的细节。我对抽象的理解就是不要用显微镜去看一个事物的所有方面这样涉及的内容就太多了而是要善于划分问题的边界当前系统需要什么就只考虑什么。 继承 在定义和实现一个类的时候可以在一个已经存在的类的基础之上来进行把这个已经存在的类所定义的内容作为自己的内容并可以加入若干新的内容或修改原来的方法使之更适合特殊的需要这就是继承。继承是子类自动共享父类数据和方法的机制这是类之间的一种关系提高了软件的可重用性和可扩展性。 多态 多态是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定而是在程序运行期间才确定即一个引用变量倒底会指向哪个类的实例对象该引用变量发出的方法调用到底是哪个类中实现的方法必须在由程序运行期间才能决定。因为在程序运行时才确定具体的类这样不用修改源程序代码就可以让引用变量绑定到各种不同的类实现上从而导致该引用调用的具体方法随之改变即不修改程序代码就可以改变程序运行时所绑定的具体代码让程序可以选择多个运行状态这就是多态性。多态性增强了软件的灵活性和扩展性。例如下面代码中的UserDao是一个接口它定义引用变量userDao指向的实例对象由daofactory.getDao()在执行的时候返回有时候指向的是UserJdbcDao这个实现有时候指向的是UserHibernateDao这个实现这样不用修改源代码就可以改变userDao指向的具体类实现从而导致userDao.insertUser()方法调用的具体代码也随之改变即有时候调用的是UserJdbcDao的insertUser方法有时候调用的是UserHibernateDao的insertUser方法 UserDao userDao daofactory.getDao(); userDao.insertUser(user); 比喻人吃饭你看到的是左手还是右手 2.java中实现多态的机制是什么? 靠的是父类或者接口定义的引用变量可以指向子类或者具体实现类的实例对象,而程序 调用的方法在运行期才动态绑定,就是引用变量所指向的具体实例对象的方法,也就是内存里正在运行的那个对象的方法,而不是引用变量的类型中定义的方法. 转载于:https://www.cnblogs.com/gxpblogs/archive/2013/05/08/3068058.html