java 入门如何设计类
2019/12/24 | 在校大二上学期 | 太原科技大学
初学java后,我们会发现java难点不在于java语法难学,而是把我们挂在了如何设计类的“吊绳”上了。这恰恰也是小白与入职多年的程序员的的差距之一。所以今天来分享一下我的观点:
那么如何设计类呢?有没有遵循的原则可言呢?答案呢,就是下面的叙述!
面试官:“请你用c++/java/python等语言以面向对象的方式,设计一个在console上运行的计算器。”
面试者埋头10分钟,写出了实现计算器功能的程序。 这里呢,程序就不往上弄了。但是小鸟写的程序大概是这样子的:一个class、一个main方法和一连串的代码,从头到尾就有一个类和一个主方法。但是这不利于后期运维,并且可拓展性很差。
所以,分"类"设计实现功能分装变得尤为重要。设计思路如下:
计算器最基本的功能为 :+ - * / 。可以将加减乘除分别写一个类,都去继承operation类(父类)。那么如何给用户一个给好的操作方法呢?那么就得在设计一个类(operationcompany类)。而这个类比较特殊,主要负责用户输入什么运算,就new 什么对象。 什么意思呢? 比如说,用户想实现乘法这个运算,那么在用户输入乘号*后,这个类的方法就会以乘法类为模板,new一个乘法类对象出来,从而去调用乘法的类方法。这种模式叫做简单工厂原则。
其中,加减乘除分开设计就体现了封装这一特性,而operation(父类)的子类(加减乘除)就体现了子类的多态性。俗称“一龙生九子,九子各不同”,正是这个道理;而子类继承父类operation类是继承所在。所以在编程中边品边思考,才会信手拈来高质量的代码行。
转载注明出处: https://www.cnblogs.com/treasureboy-blog/