第03周 预习、实验与作业:面向对象入门2与类的识别

1.3 课前问题列表

一、什么样的方法应该用static修饰?

(1)只需要访问类级别的变量,就可以用静态的;
(2)作为常量的时候就可以用静态的;
(3)不引用实例变量并且不需要改变对象状态;
(4)作为一个工具方法,只依赖于其参数。

二、不用static修饰的方法往往具有什么特性?

(1)非静态方法不需要static修饰,因为其需要调用其他非静态方法或者需要访问实例;
(2)相应的实例实现多态性,子类覆盖父类方法提供不同的实现;
(3)每个对象都有自己独立的方法,每个对象都可以独立的维护自己的状态。

三、Student的getName应该用static修饰吗?

(1)这种应该面对不同情况会有不同的方法;
(2)如果遇到getName方法返回的是一个特定的Student对象,就不能用Static来修饰;
(3)如果不是存储的实例对象,作为静态就可以用Static来修饰。

四、购物车案例中,使用了什么方法将问题描述中的类、方法、属性找出来?

(1)首先用一段文字来描述所需要设计系统以及其中的功能,并且找出其中的名词和动词;
(2)然后先分析名词,判断名词是否可以创建相应的类或者是属性;
(3)最后判断动词,判断相应动词是否可以作为一个方法,如果可以作为一个方法再判断应该属于哪个类中。

五、方法与属性到底属于哪个类,要怎么判定呢?

(1)对于属性来说,首先要看其的职责划分,其次属性应当封装在那些能够最好地管理和维护这些数据的类中,还有的属性是有着继承关系的,这样也可以判断属于哪一个类;
(2)对于方法来说,首先也是判定方法对于实例数据的操作属于哪一种类中,其次如果一个方法依赖于特定类的实例数据,或者需要访问该类的私有数据成员,那么它应该属于该类等。

六、一个项目中有很多类。怎样才能避免你项目中的类与别人编写的类同名呢?项目中类各种各样要怎么管理这些代码呢?举例说明。

(1)可以用相对应类的英语来命名,或者用明确的命名约定来命名,或者,使用包来组织类可以帮助避免命名冲突.
(2)对于管理我觉得可以分块命名,将不同类依照所能实现的来依次分好便于查看和管理;

七、阅读《阿里巴巴Java开发手册 终极版(1.3.0)》,写出至少7条Java编程规范。应包含如下几个方面:

变量命名、类命名、方法命名、常量命名、包命名、代码格式、OOP规约。

(1)代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,即使纯拼音命名方式,也要避免采用。
(2)方法名、参数名、成员变量、局部变量都统一使用lowerCamelCase风格,必须遵从驼峰形式。
(3)long或者Long初始赋值时,使用大写的L,不能是小写的l,小写容易跟数字1混淆,造成误解。
(4)左小括号和字符之间不出现空格;同样,右小括号和字符之间也不出现空格。
(5)避免通过一个类的对象引用访问此类的静态变量或静态方法,无谓增加编译器解析成本,直接用类名来访问即可。
(6)外部正在调用或者二方库依赖的接口,不允许修改方法签名,避免对接口调用方产生影响。接口过时必须加@Deprecated注解,并清晰地说明采用的新接口或者新服务是什么。
(7)关于基本数据类型与包装数据类型的使用标准如下: 所有的POJO类属性必须使用包装数据类型,RPC方法的返回值和参数必须使用包装数据类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值