实训第一周/星期3

内容全部转载自优秀的博主: 我就是总结一下:

解读思路:变量,方法,类。 还能细分
2019/7/28

Objest类下面的几个方法
  • tosString
  • equals
  • hashCode

java.lang定义的类和接口

全部详解


  • Java中== 与 equals 区别用法
    他俩都是用来比较 左右信息 输出 true/false
    信息的不同决定了输出(细节):
    - 基本数据类型
    - 包装类:Integer,Character
    - String
    - 对象【这里是否重写equals方法 影响着输出 】

类名.静态方法名(参数列表…)
类名.静态变量名


java静态方法
*不需要创建对象使用此方法,现有的 对象名/类名直接用。
*只允许访问静态成员(即静态成员变量和静态方法)

所修饰的内容一旦赋值之后就不会再被改变

变量:

变量static修饰的实例其他
成员变量静态初始化块,声明该类变量时非静态初始化块,声明该实例变量,构造器中
局部变量当且仅有一次赋值

基本数据类型变量不能被改变
final只保证这个引用类型变量所引用的地址不会发生改变

宏变量 =使用final修饰符修饰+在定义该final变量时就指定了初始值+该初始值在编译时就能够唯一指定。

方法:

  1. 父类中被final修饰的方法不能够被子类所重写
  2. final方法是可以被自己 重载

类:

  1. 当一个类不希望被继承时就可以使用final修饰

不变类=private和final修饰+提供带参的构造器+仅为该类的成员变量提供getter方法,不提供setter方法+重写Object类 的hashCode()和equals()方法(对象1.equals(对象2) = true)

[多线程中 转载] https://blog.csdn.net/u011521203/article/details/80172121#commentBox

一个类只生成一个实例

public class Sing {
private static Sing instance = null;
// private static Sing instance = new Sing();
//
public static Sing getInstance() {
if(instance == null)
instance = new Sing();
return instance;
}
}

在多线程中存在的问题
if(instance == null ) {
syncronized(Singleton.class){
if(instance == null)
instance = new Singleton(); }
}

线程介绍

进程:

每个程序有一个独立的进程,而进程之间是相互独立存在的

                        什么是线程?
                进程中的最小执行单位就是线程
多线程
串行
并行
                        什么是线程安全?
                      
A,B同时调用方法改变一个共享数,是有先后的,要求一件事,
一件事的做( ==不要乱== )。

//下面

                       如何确保线程安全?

几种方法:

  1. 一般是加在方法上synchronized关键字+锁的是括号里的对象+我没用完你就等待哇
  2. Lock的引入让锁有了可操作性=可以手动的获取锁和释放锁
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值