1.什么样的方法应该用static修饰?不用static修饰的方法往往具有什么特性?Student的getName应该用static修饰吗?
1.通常是工具类方法、单例模式中获取单例对象的方法等应该用static修饰
2.不用static修饰的方法特性:必须通过对象实例来调用,方法内部可以访问对象的实例变量
3.不应该,因为getName是获取不同学生对象的姓名
2.购物车案例中,使用了什么方法将问题描述中的类、方法、属性找出来?方法与属性到底属于哪个类,要怎么判定呢?
1.提取类、方法、属性的方法:采用面向对象分析的方法
2.方法是类的行为,属性是类的特征。判断时一般看方法或属性描述的主体,属性一般是名词,方法一般是动词。
3.一个项目中有很多类。怎样才能避免你项目中的类与别人编写的类同名呢?项目中类各种各样要怎么管理这些代码呢?举例说明。
1.使用“包package”来管理类的命名空间。
2.按功能模块划分包,将相关的类放在同一包下。比如电商项目,可分为com.ecommerce.entity(存放实体类)、com.ecommerce.dao(存放数据访问类)等包。
4.阅读《阿里巴巴Java开发手册 终极版(1.3.0)》,写出至少7条Java编程规范。应包含如下几个方面:
变量命名、类命名、方法命名、常量命名、包命名、代码格式、OOP规约。
1.变量命名:采用小驼峰命名法,如 userName ;成员变量避免使用单字符(如 i 、 j 除外在循环中),要见名知意。
2.类命名:采用大驼峰命名法,如 StudentManager ;抽象类名一般以 Abstract 开头(如 AbstractService ),接口名常用 able 、 ible 结尾(如 Runnable )或体现功能(如 List )。
3.方法命名:采用小驼峰命名法,动词开头,体现操作意图,如 getUserName 、 addProduct 。
4.常量命名:全部大写,单词间用下划线分隔,如 MAX_COUNT 。
5.包命名:全部小写,用公司域名倒序+模块名等,如 com.alibaba.demo.service 。
6.代码格式:缩进使用4个空格;方法体内的代码块,左大括号不换行,右大括号单独换行;一行代码长度不超过120个字符,超过则换行。
7.OOP规约:禁止在 static 方法中访问非 static 成员;重写方法时,子类方法的访问权限不能比父类更严格;接口中避免定义实现类共享的常量,可放在常量类中。