【java】一些零碎的知识点
java注释文档
一些常用的javadoc标签
@see: other-class |
引用other-class 生成的html文档会有一个See Alse 作为超链接的只是条目 |
{@link package.class#member label} |
同@see, 但是用于行内. 生成的html文档会有一个label作为超链接的只是条目 |
{@docRoot} |
产生到文档根目录的相对路径,用于文档树页面的显示超链接 |
{@inheritDoc} |
从当前这个类的最直接的基类中继承相关文档到当前的文档注释中 |
@version version-information |
用于生成自定义的版本信息(version-information) |
@author author-information |
用于生成自定义的作者信息(author-information) |
@since |
指定程序代码最早使用的版本 |
@param parameter-name description |
parameter-name为方法参数列表的标识符, description表示可延续多行 |
@return return-value description |
return-value描述返回值的含义description表示可延续多行 |
@throws fully-qualified-class-name description |
fully-qualified-class-name给出一个在别处定义的异常类名字(不能产生歧义), description表示可延续多行 |
@Deprecated |
建议用户不使用的旧特性 |
类相关
类的组合:
使用现有的类A的对象作为新类B的成员变量(通常限定类A的对象为private)
class A {} public class B { Private A a; }
A,B关系可确定为”has-a”(拥有)关系,即B拥有A
类的继承
现有基类A, 类B继承自类A,则类A也成为类B的父类
class A {} class B extends A {}
类A和类B的关系可确定为”is-a”(是一个)关系,即B是一个A
重写(覆盖)和重载
重写是指父类和子类之间,子类重写了父类的一个方法,且方法名,返回值,参数类型,参数个数,参数,顺序相同.
重载是一个类中,有多个方法名相同的方法,它们的返回值,参数类型,参数个数,参数,顺序至少有一个不同.
class A { public void helloWorld() { System.out.println(“hello world”);
}
} class B extends A { //重写(覆盖)父类方法 public void helloWorld() { System.out.println(“hello world”); } public void hi() { System.out.println(“hi”); } //重载上一个方法 public int hi() { System.out.println(“hi”); return 1;
}
}
java.lang类默认会被导入java文件中
static修饰的方法或变量属于类,不属于类的对象.static对每个类来说只有一个存储空间,而每个对象都有一个存储空间.可通过staticMethod, 类名.staticMethod, 对象变量.staticMethod等来访问.
创建对象时注意
String s; //创建引用(自动初始化为null),并不是创建对象
new String(“hello world”); //用new创建对象
String s = new String(“hello world”); //先用new创建对象,再创建引用s,并指向创建的对象(=具有右结合性)
操作符注意
==和!=用于比较基本类型的值,对象的引用是否相同
equals()比较对象的值是否相同, 但是不适用于基本类型
注意:equals默认行为是比较引用
class Value {
int i;
int j = 10;
} public class EqualMethod {
public static void main(String[] args) {
//==和!=比较基本类型的值
System.out.println(47 == 47.00); //true
Integer n1 = new Integer(47);
Integer n2 = new Integer(47); //==和!=比较对象的引用
System.out.println(n1 == n2); //false
//equals()比较对象的值
System.out.println(n1.equals(n2)); //true Value v1 = new Value();
Value v2 = new Value();
v1.i = v2.i = 100;
//equals()默认比较引用,这里v1,v2都为类Value的对象的引用
System.out.println(v1.equals(v2)); //false
} }
逻辑操作符(&&, ||, !) 产生一个布尔值,存在短路现象
按位操作符(&, |, ~, ^) 不存在短路现象
移位操作符:(<<, >>, >>>):左移<<时低位补0;有符号右移>>时,若符号为正则高位补0,为负则高位补1;无符号右移>>>时,无论正负高位补1(byte和short类型进行无符号右移时,先会被转换为int型, 再右移,然后截断赋值给原来类型)
直接常量
long: L, l(后缀)
float:F, f(后缀)
double: D, d(后缀)
十六进制: 0X, 0x(前缀)
八进制: 0(前缀)
long a = 1024L;
float b = 40f;
double c = 2048d;
int d = 0x21; //十进制33
int e = 021; //十进制17
【java】一些零碎的知识点的更多相关文章
- Java线程并发:知识点
Java线程并发:知识点 发布:一个对象是使它能够被当前范围之外的代码所引用: 常见形式:将对象的的引用存储到公共静态域:非私有方法中返回引用:发布内部类实例,包含引用. 逃逸:在对象尚未准备 ...
- 知名互联网公司校招 Java 开发岗面试知识点解析
天之道,损有余而补不足,是故虚胜实,不足胜有余. 本文作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向.在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几 ...
- 记录这段时间java编程的小知识点
记录这段时间java编程的小知识点 eclipse项目导入中文乱码 eclipse左侧目录结构变动 eclipse代码段左右移动 按tal键,是整体右移. 按shift table 同时按,是整体左 ...
- python - 那些零碎的知识点
python - 那些零碎的知识点 一. 字符串格式化 1. "旧式字符串解析(%操作符)" 'Hello, %s' % name "Hello, Bob" ' ...
- Java面试之http知识点(必问)
Java面试之http知识点(必问) 版权声明:本文为博主原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/q ...
- 史上最全的Java高级技术点,全是Java高级进阶技术,几乎包含了Java后端的所有知识点
史上最全的Java高级技术点,全是Java高级进阶技术,几乎包含了Java后端的所有知识点 1
- Java工程师的必备知识点
最近参加了一次公司内部的调岗计划,打算加入一个更核心的部门.调岗计划有面试环节,为了不让自己搞砸,悉心准备了将近一个月,请教了百度和腾讯的有过面试官经验的大学同学,系统性的总结了Java工程师的核心知 ...
- 理论篇-Java中一些零碎的知识点
1. Java中length,length方法,size方法区别 length属性:用于获取数组长度. length方法:用于获取字符串长度. size方法:用于获取泛型集合有多少个元素. 2. is ...
- Java入门:零碎的知识点
实例变量经常被称为属性 成员变量和局部变量:前者在类中定义,后者在类的方法中定义且系统不会自动赋初始值 我们创建一个对象的时候实际上执行的是无参的构造方法 静态变量 static String arr ...
随机推荐
- C#连接Access2013
今天测试连接Access2013数据库,遇到错误,综合几个大神建议,解决了 我的系统是windows 2008 64位的,连接字符串如下: <connectionStrings> < ...
- redis之事务
一.是什么 可以一次执行多个命令,本质是一组命令集合.一个事务中的所有命令都会序列化,按顺序的串行化执行而不被其他命令插入,不许加塞.一个队列中,一次性.顺序性.排他性的执行一系列命令. 二.事务常用 ...
- Oracle 查看当前数据库版本的方法
常用的有三种方法: 方法一:v$version SQL> select * from v$version; BANNER ---------------------------------- ...
- (转)python-user-agents
原文:http://blog.topspeedsnail.com/archives/1958 Python3网络爬虫(四):使用User Agent和代理IP隐藏身份-------https://bl ...
- C# String.Format的格式限定符与Format方法将多个对象格式化一个字符串原理
Format方法将多个对象格式化成一个字符串Format方法解析格式字符串的原理: (1).格式字符串中的{0}会被替换成格式字符串之后的第一个参数,以此类推 (2).Format方法解析格式字符串时 ...
- jar包运行main程序
当把java项目打包成jar后,如何运行main函数呢? 第一种:指定运行main类: 1 java -cp test.jar com.hk.app.Application 第二种:在MANIFEST ...
- SpringCloud入门之Maven系统安装及配置
一.Maven 介绍 这个单词中文翻译为“专家”或“内行”.下面将向你介绍 Maven这一跨平台的项目管理工具.作为 Apache 组织中的一个成功的开源项目,Maven 主要服务于基 Java 平台 ...
- centos7之使用最新版的kubeadm体验k8s1.12.0
1.环境准备 centos7 .docker-ce18.06.1-ce.kubeadm.kubelet.kubectl 2.安装 yum安装,准备repo文件 docker: [docker-ce-s ...
- 超详细的Java时间工具类
package com.td.util; import java.sql.Timestamp; import java.text.ParseException; import java.text.Pa ...
- 并发编程之 CyclicBarrier 源码分析
前言 在之前的介绍 CountDownLatch 的文章中,CountDown 可以实现多个线程协调,在所有指定线程完成后,主线程才执行任务. 但是,CountDownLatch 有个缺陷,这点 JD ...