第03周 预习:面向对象入门2与类的识别

1、什么样的方法应该用static修饰?不用static修饰的方法往往具有什么特性?Student的getName应该用static修饰吗?

   1、当一个方法或者变量需要初始化加载,或者是经常被调用的时候可以加上static。

   2、用static修饰的方法可以用类名直接调用,不用的一定要先实例化一个对象然后才可以调用。 没有用static修饰的方法可以直接调用其他的静态方法和非静态方法 。

  3、不应该用static修饰。

2、购物车案例中,使用了什么方法将问题描述中的类、方法、属性找出来?方法与属性到底属于哪个类,要怎么判定呢?

  1、要考虑到购物车案例想要实现那些功能和系统,对于类和属性要考虑有哪些商品,对于方法要考虑动作,可以将购物时的动作分类。

 2、方法与属性属于名词对应类,判定要用动词对应方法。

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

    将类放在不同的包中。采用包管理,将同类的类名放在一个包里。

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

(1)变量命名

   1)不能以下划线或美元符号开始也不能以下划线或美元符号结束

   2)不能用拼音与英文混合的方式,更不允许直接用英文的方式

   3)中括号是数组类型的一部分,数组定义如下:String[] args

  4)POJO 类中布尔类型的变量,都不要加 is,否则部分框架解析会引起序列化错误。

(2)类命名

    1)使用UpperCamelCase风格,必须遵从于驼峰形式,但是以下情形例外:DO/BO/DTO/VO/AO

    2)抽象类命名使用 Abstract 或 Base 开头;异常类命名使用 Exception 结尾;测试类 命名以它要测试的类的名称开始,以 Test 结尾。

   3)对于 Service 和 DAO 类,基于 SOA 的理念,暴露出来的服务一定是接口,内部 的实现类用 Impl 的后缀与接口区别。

(3)方法命名

    1)方法名、参数名、成员变量、局部变量都统一使用 lowerCamelCase 风格,必须遵从 驼峰形式。

(4)常量命名

     1)常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长。

     2)不允许任何魔法值(即未经定义的常量)直接出现在代码中。

     3)long 或者 Long 初始赋值时,使用大写的 L,不能是小写的 l,小写容易跟数字 1 混 淆,造成误解。

     4)不要使用一个常量类维护所有常量,按常量功能进行归类,分开维护。

(5)包命名

   1)包名统一使用小写,点分隔符之间有且仅有一个自然语义的英语单词。包名统一使用 单数形式,但是类名如果有复数含义,类名可以使用复数形式。

(6)代码格式

    1)大括号的使用约定。如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果 是非空代码块则: 1. 左大括号前不换行。2. 左大括号后换行。 3. 右大括号前换行。 4. 右大括号后还有 else 等代码则不换行;表示终止的右大括号后必须换行 

    2)左小括号和字符之间不出现空格;同样,右小括号和字符之间也不出现空格。

    3)if/for/while/switch/do 等保留字与括号之间都必须加空格。

   4)任何二目、三目运算符的左右两边都需要加一个空格。 说明:运算符包括赋值运算符=、逻辑运算符&&、加减乘除符号等

  5) 注释的双斜线与注释内容之间有且仅有一个空格。

  6方法参数在定义和传入时,多个参数逗号后边必须加空格。

(7)OOP规约

    1)避免通过一个类的对象引用访问此类的静态变量或静态方法,无谓增加编译器解析成 本,直接用类名来访问即可。

    2)Object 的 equals 方法容易抛空指针异常,应使用常量或确定有值的对象来调用 equals。

    3)所有的相同类型的包装类对象之间值的比较,全部使用 equals 方法比较。

     4)类内方法定义顺序依次是:公有方法或保护方法 > 私有方法 > getter/setter方法

    5)setter 方法中,参数名称与类成员变量名称一致,this.成员名 = 参数名。在 getter/setter 方法中,不要增加业务逻辑,增加排查问题的难度

   

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值