scjp第一章学习总结

  1. 变量命名规则
  • 第一个字符只能以$、_或是英文字母开头
  • 第二个字符起之后可以是$、_、英文字母或数字任意组合,长度没有限制
  1. 开发时变量应遵循的命名规范(驼峰命名法)
  • 变量是以英文字母的小写开头,之后每个单词的第一个字母大写
  • 常量使用大写英文单词命名,使用下划线将单词分隔,如public static final STUDENT_NUM = 40;
  • 尽量起有意义的变量名,如统计人数的变量可以是int countPersonNum;,而不是int i;
有效规范变量命名:
String myName = "Jack";
int _id = 11;
int _init_ = 0;
Proxy $proxy1 = new Proxy();无效变量命名:
String #myName = "Jack"; // 第一个字符只能是$、_或英文字母
int 123id = 11; // 同上
  1. 普通方法命名规范(驼峰命名法)
  • 方法的定义规则
访问修饰符 返回值类型 方法名(参数类型 参数名,...){}

其中修饰符可选,构造参数没有返回值类型,方法名遵循驼峰命名法并使用有意义命名,参数列表可选,需要声明参数的类型。

/**
* 普通方法
*/
public int getPersonId(Person person){...
}// 构造方法
Person(){...
}
Person(int id, String name){...
}
  1. 普通类、抽象类、接口的区别
  • 类的创建方式:访问修饰符 class 类名{},其中访问修饰符是可选的,一个.java文件中可以有多个类,但是只允许有一个公共类,即被public修饰的类,并且当有公共类时.java文件命名和该类同名
  • 抽象类的创建方式:访问修饰符 abstract class 类名{},其中访问修饰符时可选的,默认、protected或public,因为抽象类无法进行实例化,其中的方法需要通过子类实现才能使用,private修饰类将导致类无法访问,即该类测出现就没有意义了。
  • 接口的创建方式:访问修饰符 interface 接口名{},其中访问修饰符根据jdk的版本,要求也不同通常是public。
  • 类和接口的命名规范:第一个字母大写,遵循驼峰命名法
public class Person{...
}public abstract class DefaultPersonDao{...
}public interface IPersonDao{...
}
  • 抽象类和接口的相同和区别
相同点
1、都无法被实例化
不同点(最新版jdk)
1、接口中的变量只能是`public static final`的,抽象类可以定义任意类型的变量
2、接口中不含有实例变量,抽象类中可以含有实例变量
3、接口中的方法没有protected权限,抽象类中有
  1. 访问权限修饰符的理解
  • 想操作一个对象,需要先看对象类的访问权限,只有拥有类的访问权限,才能访问到类内部的成员变量和成员方法
  • 默认访问权限和3个访问修饰符
默认权限:default 包权限,只有在同一个包下的类才能进行访问
访问修饰符:
1、public 公共权限,任意包下的任何类都能访问
2、protected 保护权限,仅能被同一个包下的类或是子类访问
3、private 不能够被外界访问,只能在类内部进行操作
  • 重点理解和区别:default和protected
//例子
//a包下的类A
package a;
public class A{protected int ageA;String name;...
}
//b包下的类B
package b;
public class B{protected int ageB;...
}
//c包下的类C
package c;
public class C extends A{public static void main(String[] agrs){A a = new A();System.out.printf(a.ageA);// 运行报错,不同包下无法使用"."操作符访问protected权限的成员变量B b = new B(); System.out.printf(b.ageB);// 运行报错,同上C c = new C();System.out.printf(c.ageA);// 此时可以成功访问到ageA这个属性,但是这里通过继承进行访问的,而不是简单的"."访问System.out.printf(c.name);// 运行报错,default权限进能够被同一个包下的类访问}
}
  1. 几个特殊的修饰符的作用
final 被修饰的变量不可二次赋值,被修饰的方法不可被重写,被修饰的类不可被继承
static 修饰的变量为类成员,修饰的方法为类方法,通常和final配合使用声明常量
strictfp 修饰一个类或方法表示其遵循IEEE 754算术规范
  1. 个人感悟
    温故而知新,对访问权限修饰符有了新的认识。

scjp第一章学习总结相关推荐

  1. 统计学习方法 第一章 学习心得

    统计学习方法 第一章 学习心得 以下可能有不当之处,请各位朋友停步指正,先谢过各位. 上一帖子说道,统计学习方法的三要素: 模型.策略.算法. 模型:模型的假设空间 策略:模型的选择准则,即:定义最优 ...

  2. 第一章 学习Java的建议

    第一章 学习Java的建议 Java是一门流行的编程语言,想要掌握Java编程,有效的学习方法很重要的.下面给大家分享几点学习Java的方法,仅供大家参考 1. 理解Java思想 Java是一门面向对 ...

  3. 现代控制理论第一章学习笔记

    现代控制理论第一章学习笔记 控制系统的状态空间表达式 1.1状态变量及状态空间表达式 1.2状态变量及状态空间表达式的模拟结构图 1.3状态变量及状态空间表达式的建立 1.3.1从系统框图建立状态空间 ...

  4. 《小马哥讲Spring核心编程思想》-第一章学习笔记(1)

    <小马哥讲Spring核心编程思想>-第一章学习笔记(1) 一.课程介绍 1.为什么要学习spring? 2.深入学习spring的难点有哪些? 3.课程的设计思路是怎样的? 二.内容综述 ...

  5. 01_01 python机器学习_第一章学习内容整理_加载样本数据绘制散点图

    第一章学习内容整理_加载样本数据&绘制散点图 01 常用包说明 python可以解决很多问题,相应解决方案使用的包也很多,不太好记忆. 为了便于记忆,用大白话简单描述一下各个包的功能. # 科 ...

  6. 《HeadFirst Python》第一章学习笔记

    对于Python初学者来说,舍得强烈推荐从<HeadFirst Python>开始读起,这本书当真做到了深入浅出,HeadFirst系列,本身亦是品质的保证.这本书舍得已在<Pyth ...

  7. lisp 线性标注自动避让_《数据标注工程》第一章学习笔记及作业:数据标注概述...

    第一章:数据标注概述 一.数据标注的起源与发展 1.人工智能行业的发展 AI的概念:意指让机器具有像人一般的智能行为(1956年,达特茅斯会议,由约翰·麦卡锡提出) AI的发展:60多年来,浮浮沉沉. ...

  8. 人工智能及其应用——第一章学习笔记

    人工智能及其应用 第一章 绪论 1.1 人工智能的定义与发展 1.1.1 人工智能的定义 智能:智能是一种应用知识处理环境的能力或由目标准则衡量的抽象思考能力 智能机器:智能机器是一种能够在不确定环境 ...

  9. 【2023 · CANN训练营第一季】昇腾AI入门课(PyTorch)第一章学习笔记——Hi Ascend

    第一章 昇腾AI基础知识 华为AI全栈的解决方案分为四层,分别是,芯片层,芯片使能层,AI框架层,应用使能层.那么这四个层面分别是用来做什么的呢?且看我娓娓道来. 1.芯片层 芯片层也叫Ascend层 ...

  10. 《Python数据分析与挖掘实战》张良均,第一章学习笔记

    第一章从餐饮行业来引出数据挖掘 [有问题或错误,请私信我将及时改正:借鉴文章标明出处,谢谢] 刚开始讲到了T餐饮企业的管理系统(5个管理系统),因为多方面管理系统加强了此企业的信息化管理,提高了工作效 ...

最新文章

  1. 笔记-中项案例题-2021年上-范围管理
  2. 轮播插件swiper.js?
  3. php curl ssr,php curl模拟登陆
  4. linux7电脑配置要求,安装win7系统电脑配置有何要求--win10专业版
  5. Exchange server 2007 出现“0x8004010F”错误的解决办法
  6. 2021年8月下旬好文收藏
  7. 电脑刷机重装系统_手机刷机,原来也没有那么复杂
  8. Java异常处理学习笔记(抛出、捕获、finally、异常传播、NPE、断言、日志)
  9. 洛谷 P1433 吃奶酪 Label:dfs 剪枝Ex
  10. 这就是搜索引擎 (豆瓣).html 1.index 第1章 搜索引擎及其技术架构 1 第2章 网络爬虫 12 第3章 搜索引擎索引 36 第4章 索引压缩 76 第5章 检索模型与搜索排序 99
  11. k6前级效果器怎么用_【易开EK-K6 DSP 专业 数字前级效果器 前置】价格_厂家_图片 -Hc360慧聪网...
  12. 提高信息技术课堂教学实效研究 课题论证报告
  13. mysql报表服务器配置_Power Bi报表服务器安装及数据库配置方法
  14. Android应用内设置多语言,可随系统语言改变而改变,也可设置app为固定语言不受系统语言影响
  15. 【前端】纯CSS实现探照灯效果
  16. WPS如何实现整行数据行间随机排序
  17. mid360激光雷达跑Point-LIO算法
  18. Confluence 6 Duplicate Key 相关问题解决
  19. 内部泄露版!互联网大厂的薪资和职级一览
  20. java重绘橡皮筋_【译】谈橡皮筋特效的解决方案

热门文章

  1. Spring定时器cron表达式
  2. LVW特征选择算法简单介绍
  3. 解决方案PPT设计:如何作出标准通用型的目录页?
  4. Win7系统经常蓝屏故障处理过程及思路
  5. lfm雷达信号处理matlab,雷达信号处理-线性调频(LFM)Chirp信号脉冲压缩
  6. uniapp 使用 colorUI
  7. oa人员导入模板_别拿OA不当系统,让CIO困惑的几个OA小问题
  8. [黑科技] 使用Word和Excel自制题库自判断答题系统
  9. C语言函数库之字符串连接函数(string.h)
  10. 设备管理 USB ID