美文网首页
杂七杂八(一)

杂七杂八(一)

作者: go_2021 | 来源:发表于2022-02-02 17:04 被阅读0次

耐心是一切聪明才智的基础。

https://mp.weixin.qq.com/s/wnoBuliPY6gL6ox5JV-v5Q
https://mp.weixin.qq.com/s/OrFbIMzLethowDl24f97OA
https://mp.weixin.qq.com/s/eZO7-sbnaMm7QV3u-z3OWA

c++异同
  1. java 为纯面向对象语言 所有代码都必须在类中实现 除基本类型 都是类
  2. 不支持多继承 但是可以多实现接口
  3. java没有指针概念 提供了垃圾回收 不用显性的管理内存的分配
  4. 平台无关性 一次编译 到处运行
  5. Java是解释性语言 先编译成字节码 然后由jvm解释执行 也可以编译执行
基本类型

https://www.jianshu.com/p/1a79a62bd700
12341234
byte short int long boolean char flout double

equals和hashcode

equals比较值。hashcode粗略比较值。
hashcode不相等equals一定不相等。
hashSet,hashMapkey怎么判断不存在呢?
hashcode不存在 && equals false

hashcode
https://www.jianshu.com/p/be943b4958f4
https://stackoverflow.com/questions/49172698/default-hashcode-implementation-for-java-objects/49175508#49175508
JDK8 的默认hashCode的计算方法是通过和当前线程有关的一个随机数+三个确定值
项目中的lombok @Data注解 会重写hashCode和对象值相关 同样值的对象hashCode是一样的。

自动拆箱装箱

基本类型和基本对象之间的转化。
自动装箱:valueOf基本类型->基本类型对应的对象
自动拆箱:intValue(),doubleValue() 基本类型对应的对象->基本类型

泛型

泛型可以提高 代码的可读性 以及安全性
只发生在 编译期间 会替换成Object
通配符分为:

  • 限定 <? extends T> <? super T>
  • 非限定<?>
test(List<? extends A> aa) //aa为A的子类或者A
aa.add(new B());//报错 只能添加null
A a = aa.get(0);//最低是自己
test(List<? super A> aa) // aa 为A的父类或者A
aa.add(new B());//最高自己
B a = aa.get(0);//最低也是父类
多态

Java中多态的实现方式:接口实现,继承父类进行方法重写,同一个类中进行方法重载。
方法重写(Overriding) 重写父类方法。
方法重载(Overloading) 多个方法名相同的方法。

  • 绑定技术
    静态绑定final | static | private都是静态绑定 编译之后 会生成this关键字。
    动态绑定 一个虚方法表,存于jvm的方法区 。
内部类

https://www.liaoxuefeng.com/wiki/1252599548343744/1376414781669409

public static void main(String[] args) { Test test = new Test(); //不会触发 内部类的加载 //普通内部类 必须先创建一个类的实例 
Test.InnerTest test1 = test.new InnerTest(); //静态内部类 创建不依赖父类的实例 
Test.StaticInnerTest test2 = new Test.StaticInnerTest(); 
System.out.println("dfd");
  • 静态内部类
    不依赖父类的实例 所以可以用它来实现外部类的单例。
    初始化不会触发 外部类的加载
  • 非静态内部类
  • 匿名类(函数式编程 lambda)
循环一秒多少次
int i = 0;
for (;;){
if(i > 100000) return;
System.out.println(i);
i++;
}

这样的循环 一秒能跑几十w次 光循环的话 一秒差不多可以百万

switch底层是int实现的

https://mp.weixin.qq.com/s/HhOIcaPoQtm9Xj-FsEEJhg
byte short String Enum 最终都是转化为int的
long因为转化不了所以不支持

接口默认作用域

https://www.journaldev.com/1601/interface-in-java
接口方法 默认是abstract and public (所以不用加public修饰符)

相关文章

  • 一些杂七杂八的说说

    这些年来,有一些杂七杂八的个人感受,一些杂七杂八的个人观点,于是就有了这篇杂七杂八的个人说说。 片断感受一: 的确...

  • 杂七杂八(一)

    有朋友说跟我说,我之前写的几家店都有点low,为什么不安利一点有逼格的店子。 所以 今天我们干脆来来 安利几个lo...

  • 杂七杂八 「 一 」

    收拾了下小书桌,自从搬到新家,这个桌子小了N倍。 我的天,这是3岁小孩用的书桌吧!手都没办法伸展呐! 买了个增高架...

  • 杂七杂八(一)

    Android gradle 手动配置。1.到官网[https://services.gradle.org/dis...

  • 杂七杂八(一)

    Markdown语法献给写作者的 Markdown 新手指南简书上使用MarkdownAndroid通过TCPIP...

  • 杂七杂八(一)

    耐心是一切聪明才智的基础。 https://mp.weixin.qq.com/s/wnoBuliPY6gL6ox5...

  • 杂记第3天

    早餐:家常早餐。午餐:馄饨和一些杂七杂八。晚餐:接着吃了一些杂七杂八。 运动:下身力量训练时间半小时。 阅读:《下...

  • 小画

    杂七杂八的比较多

  • 往事杂七杂八(一)

    家乡有个名曰“抓周”的旧习俗,当小孩满周岁时,人们都要在桌上摆出钱、帽、书、玩具等物让孩子去“抓周”以测前途。然而...

  • 杂七杂八之一

    杂七杂八一:无限与无 那么,今天我们就不要在意《狼王梦魇》了,今天来说些有意思...

网友评论

      本文标题:杂七杂八(一)

      本文链接:https://www.haomeiwen.com/subject/phhhkrtx.html