ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

第三周-自主学习任务-面向对象基础与类的识别

2021-09-23 20:02:54  阅读:161  来源: 互联网

标签:Java 换行 第三周 面向对象 static 命名 识别 方法 大括号


学习目标

  1. 重点:掌握pivate、public关键字的用途及其与setter/getter模式和封装性之间的关系。
  2. 理解static属性与static方法的用途。
  3. 掌握使用初始化块初始类的方法。掌握初始化块与静态初始化块的区别。
    4.掌握使用我package管理类。
    5.重点:学会识别问题中的类并定义解决问题所需要的类。
    6.初步了解Java编程规范。

学习任务

  1. 观看(Java线上课程 http://www.xueyinonline.com/detail/218804544)
  • 视频:3.3-3.7.
  • 重点观看:3.3、3.4、3.7(面向对象-类的设计).
  1. 重点:结合视频与预习课件以博客或者帖子的形式完成如下"问题列表",需提交。本次作业基础分1分,最高3分。
  2. 尝试完成PTA题集:
  • 编程题:3.1 构造方法与toString,3.2 构造方法与初始化块,3.3 形状。提前完成这3题的同学,实验课上检查后加分。
  • 程序填空题:b3.1
  1. 阅读:阿里巴巴Java开发手册 终极版(1.3.0)》中的1.1-1.4.

问题列表

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

  • 当一个方法需要初始化加载或者经常被调用的时候可以加上 static,被 static 修饰的方法可以用类名直接调用,不用实例化一个对象后才调用
  • 没有用static修饰的方法可以直接调用其他的静态方法和非静态方法
  • Student的getName不应该用static修饰,因为其name为非静态属性

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


  • 找到相应的主语来判断方法和属性属于哪个类

3. 一个项目中有很多类,项目中要怎么管理这些代码呢?

  • 根据不同的功能和种类进行分包,将同一类的类放入同一包下

4. 阅读《阿里巴巴Java开发手册 终极版(1.3.0)》,写出至少7条Java编程规范。应包含如下几个方面:变量命名、类命名、方法命名、常量命名、包命名、代码格式、OOP规约。

  1. 变量命名:代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束,使用 lowerCamelCase 风格,必须遵从驼峰形式,首单词小写,后单词大写
  2. 类命名:名使用 UpperCamelCase风格,必须遵从驼峰形式,全部单词大写
  3. 方法命名:使用 lowerCamelCase 风格,必须遵从驼峰形式,首单词小写,后单词大写
  4. 量命名:常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长
  5. 包名统一使用小写,点分隔符之间有且仅有一个自然语义的英语单词。包名统一使用单数形式,但是类名如果有复数含义,类名可以使用复数形式。
  6. 大括号的使用约定:如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果是非空代码块则:左大括号前不换行、左大括号后换行、右大括号前换行、右大括号后还有 else 等代码则不换行;表示终止的右大括号后必须换行。if/for/while/switch/do 等保留字与括号之间都必须加空格。方法参数在定义和传入时,多个参数逗号后边必须加空格。单行字符数限制不超过 120 个,超出需要换行。
  7. OOP规约:
  • 避免通过一个类的对象引用访问此类的静态变量或静态方法,无谓增加编译器解析成
    本,直接用类名来访问即可。
  • 所有的覆写方法,必须加@Override 注解。
  • 相同参数类型,相同业务含义,才可以使用 Java 的可变参数,避免使用 Object。
  • 外部正在调用或者二方库依赖的接口,不允许修改方法签名,避免对接口调用方产生
    影响。接口过时必须加@Deprecated 注解,并清晰地说明采用的新接口或者新服务是什么。
  • 不能使用过时的类或方法。
  • Object 的 equals 方法容易抛空指针异常,应使用常量或确定有值的对象来调用
    equals。
    正例:"test".equals(object);
    反例:object.equals("test");
  • 所有的相同类型的包装类对象之间值的比较,全部使用 equals 方法比较。
  • 构造方法里面禁止加入任何业务逻辑,如果有初始化逻辑,请放在 init 方法中。

标签:Java,换行,第三周,面向对象,static,命名,识别,方法,大括号
来源: https://www.cnblogs.com/lzwx2/p/15325710.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有