1.什么样的方法应该用static修饰?不用static修饰的方法往往具有什么特性?Student的getName应该用static修饰吗?
1.什么样的方法应该用static修饰?
(1.)与类的实例化无关的方法,如工具类中的静态方法
(2.)与类的实例化有关,但是不需要访问实例变量的方法,如计算器类中的加法方法
2.不用static修饰的方法往往具有什么特性?
(1.)需要访问实例变量或实例方法
(2.)需要在方法内部使用this关键字
(3.)需要被不同的实例对象调用,而且每个实例对象可能具有不同的状态
3.Student的getName应该用static修饰吗?
(1.)Student的getName方法不用static修饰。因为getName方法很可能需要访问实例变量(如学生的姓名),并且不同的学生对象可能具有不同的姓名。所以,getName方法应该是一个实例方法
2.购物车案例中,使用了什么方法将问题描述中的类、方法、属性找出来?方法与属性到底属于哪个类,要怎么判定呢?
1.购物车案例中,使用了什么方法将问题描述中的类、方法、属性找出来?
首先,阅读问题描述,找出与问题相关的名词和动词,这些名词和动词往往对应着类和方法。根据找出的名词和动词,可以初步判断出可能存在的类和方法。进一步分析,确定类之间的关系和属性。最后,根据具体的业务需求和实际情况,对类和方法进行调整和优化
2.方法与属性到底属于哪个类,要怎么判定呢?
要判定方法和属性属于哪个类,可以根据问题的描述和需求,结合面向对象的设计原则和实际情况进行判断
3.一个项目中有很多类。怎样才能避免你项目中的类与别人编写的类同名呢?项目中类各种各样要怎么管理这些代码呢?举例说明。
将功能相关的类组织在同一个模块或包中,便于管理和维护。模块化设计可以根据功能、业务逻辑或者其他合理的划分方式进行。
为代码添加适当的注释和文档,描述类、方法和属性的用途和功能,便于其他开发人员理解和使用。
4.阅读《阿里巴巴Java开发手册 终极版(1.3.0)》,写出至少7条Java编程规范。应包含如下几个方面:变量命名、类命名、方法命名、常量命名、包命名、代码格式、OOP规约。
1.变量命名:
变量名应使用小写字母开头的驼峰命名法;避免使用单个字符作为变量名,除非是临时变量。
2.类命名:
类名应使用大写字母开头的驼峰命名法;类名应具有描述性,能够准确表达类的用途。
3.方法命名:
方法名应使用小写字母开头的驼峰命名法;方法名应具有描述性,能够准确表达方法的功能。
4.常量命名:
常量名应全部使用大写字母,单词之间使用下划线分隔
5.包命名:
包名应全部使用小写字母,单词之间使用点号分隔
6.代码格式:
使用4个空格作为缩进,而不是制表符;每行代码长度不超过80个字符,超出时应进行换行;使用大括号独占一行,并且与前一行代码对齐
7.OOP规约:
尽量使用接口或抽象类进行编程,而不是直接使用具体类;避免使用过长的参数列表,超过4个参数时应考虑使用封装对象;不允许任何未经定义的常量直接出现在代码中