Java基础知识点(四)】的更多相关文章

前言:记录Java基础知识点,方便熟悉与掌握. 1.面向对象的"六原则一法则" “六原则一法则”:单一职责原则.开闭原则.依赖倒转原则.里氏替换原则.接口隔离原则.合成聚合复用原则和迪米特法则. 参考: https://www.cnblogs.com/qifengshi/p/5709594.html https://blog.csdn.net/sinat_26342009/article/details/46419873 2.使用普通for循环遍历LinkedList速度慢 原因:Li…
前言:准备将Java基础知识点总结成一个系列,用于平常复习并加深理解.每篇尽量做到短小精悍,便于阅读. 1.Math类中相关函数 Math.floor(x):返回不大于x的最大整数.eg:Math.floor(1.4)=1.0. Math.round(x):该函数会进行“四舍五入”,具体操作:返回小于等于(x+0.5)的最大整数(加0.5然后向下取整).换算记忆:Math.round(x)=Math.floor(x+0.5).eg:Math.round(1.4)=Math.floor(1.4+0…
前言:Java的基础知识点不能间断. 1.Array和ArrayList的区别 关于Array的用法,参看:http://blog.csdn.net/b_11111/article/details/53573742 Array为java.lang.reflect包下的一个类,提供了动态创建和访问数组的方法.可以包含基本数据类型和对象类型.大小固定,因为数组在创建时就确定了长度. 关于ArrayList,参看:http://zhangshixi.iteye.com/blog/674856 Arra…
前言:本篇随笔,主要记录Java的基础知识点,不管是用于项目或者面试中,笔者认为都非常有用,所以将持续更新...... 1.Java的访问权限 Java中有四种访问权限:默认访问权限.public.private.protected 这四种访问权限中,只有默认访问权限和public才能修饰类(这里所说的类为外部类,对于内部类,四种权限都可以进行修饰),对于字段和方法,四种权限都可以进行修饰. 默认访问权限(字段或类前不加任何修饰符):用默认访问权限进行修饰,只能在同包中进行访问. public:…
1.JAVA简介 1.1java体系结构:j2se,javaweb,j2ee 1.2java特点:平台无关(虚拟机),垃圾回收(使得java更加稳定) 1.3 JDK与JRE,JDK:java开发环境,JRE:java运行环境 1.4第一个java程序:HelloWorld,java的入口是main(public static void main(String[] args)) 1.5java程序的开发步骤:.java编译(javac)成.class运行(java).class文件 2.基本数据…
前言 本文主要是我之前复习Java基础原理过程中写的Java基础知识点总结.Java的知识点其实非常多,并且有些知识点比较难以理解,有时候我们自以为理解了某些内容,其实可能只是停留在表面上,没有理解其底层实现原理. 纸上得来终觉浅,绝知此事要躬行.笔者之前对每部分的内容对做了比较深入的学习以及代码实现,基本上比较全面地讲述了每一个Java基础知识点,当然可能有些遗漏和错误,欢迎读者指正. Java基础知识点总结 每部分内容会重点写一些常见知识点,方便复习和记忆,但并不是全部内容. 面向对象三大特…
#java基础知识点补充---二维数组 首先定义一个二维数组 int[][] ns={ {1,2,3,4}, {5,6,7,8}, {9,10,11,12}, {13,14,15,16} }; 实现遍历二维数组 1. 增强的for循环实现二维数组的遍历 for (int[] arr : ns) { for (int n : arr) { System.out.print(n + ","); } System.out.println(); } 2. 使用Arrays.deepToStri…
目录 1.String 和StringBuffer的区别. 2.数组有没有length()这个方法? String有没有length()这个方法? 3.final, finally, finalize的区别. 4.Errror , Exception,RuntimeException区别 5.Java语言如何进行异常处理,关键字:throws.throw.try.catch.finally分别如何使用. 6.throw和throws有什么区别? 7.请说一下你常用的几种异常? 8.线程的基本概念…
很多 Java 基础的东西都忘记了, 有必要再复习一些基本的知识点. 本文主要参考 https://github.com/Snailclimb/JavaGuide ===========================Java 访问限定符的可见性===========================参考: https://o7planning.org/en/10319/access-modifiers-in-javaJava 实际上有 private/default/protected/publ…
以下10点为JAVA 基础知识,后面将足以总结和完善以备面试 数据类型 (包装类,字符串,数组) 异常处理 Java IO和NIO 数据结构 (集合和容器 ) 多线程(并发) 网络通信(协议) 面向对象 JVM(内存分布,垃圾回收,类加载机制,反射) JDK源码 JAVA常用包(string,java.concurrent,java.lang ...) 学完上面知识点后, 计划用一些练习去巩固知识 记事本(java.io,  java.nio) 聊天室(多线程,socket, channel,…
面对未知的行业,人们的第一反应应该是:拒绝踏入.因为学习真的是一个痛苦的过程.想要真正了解一个行业,熟知一个行业,并熟练掌握某一技术,是真的需要时间和精力的.在学习Java基础知识期间,千锋小编疯狂为你们打CALL,并为你准备了一些java重要的技术点,是需要重点学习的技术哦! 1.多线程并发 多线程是Java中普遍认为比较难的一块.多线程用好了可以有效提高cpu使用率,提升整体系统效率,特别是在有大量IO操作阻塞的情况下;但是它也是一柄双刃剑,如果用不好,系统非但提升不大,或者没有提升,而且还…
业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 我将会持续更新java基础知识,欢迎关注. 往期章节: JAVA基础第一章-初识java JAVA基础第二章-java三大特性:封装.继承.多态 JAVA基础第三章-类与对象.抽象类.接口 说起集合框架,很多面试官在面试初级javaer的时候也是很喜欢问的一个知识点 我们先上一张图看看 从上面的关系图中,我们可以看到从上往下分呢~最上面的是接口,中间是抽象类,最下面就是…
为跳槽面试做准备,今天开始进入 Java 基础的复习.希望基础不好的同学看完这篇文章,能掌握泛型,而基础好的同学权当复习,希望看完这篇文章能够起一点你的青涩记忆. 一.什么是 IO 流? 想象一个场景:我们在电脑上编辑文件,可以保存到硬盘上,也可以拷贝到 U 盘中.那这个看似简单的过程,背后其实是数据的传输. 数据的传输,也就是数据的流动.既然是流动也就会有方向,有入方向和出方向.举个上传文件的栗子,现在有三个对象,文件.应用程序.上传的目标地址(服务器).简化的上传文件有两步: 应用程序读文件…
1.循环结构概述和for语句的格式及其使用 * 什么是循环结构 循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环. 循环语句的组成 初始化语句: 一条或者多条语句,这些语句完成一些初始化操作. 判断条件语句: 这是一个boolean 表达式,这个表达式能决定是否执行循环体. 循环体语句: 这个部分是循环体语句,也就是我们要多次做的事…
一.抽象类 1.介绍 使用关键字 abstract 定义抽象类. abstract定义抽象方法,只有声明,不用实现. 包含抽象方法的类必须定义为抽象类. 抽象类中可以有普通方法,也可以有抽象方法. 抽象类不能被实例化,但可以定义引用变量. 抽象关键字 abstract 和哪些不可以共存?final,private,static. 2.应用场景 在某些情况下,某个父类只知道其子类应该包含怎样的方法,但不知道这些子类如何实现这些方法. 从多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为子类的…
”https://www.runoob.com/java/java-data-structures.html” 成员方法:是类中自己定义的方法. 构造方法:要和自己类中类名相同. 不论是构造函数还是成员方法,子类想引用父类的构造函数和成员方法时都要使用super关键字,但当子类不管有没有参数的构造函数里没有super关键字时(同时父类拥有无参的构造函数),java会自动调用父类的无参构造函数(自动调用只应用于调用构造函数,不会调用父类成员方法). 子类从父类重写的方法中可以用super关键字来调…
小知识点 所有的程序,都要定义在类里面: 异常 定义方法时,使用 throws 可以用来捕获方法体内没有捕获的异常,然后以 SomeException 抛出异常 java是解释型语言.java虚拟机能实现一次编译多次运行. JDK(java software Development kit 软件开发包),JRE(java Runtime Environment java运行环境). javac编译java程序,java运行java程序. 一个文件最多有一个public class. java不提…
1.java是如何管理内存的 java的内存管理就是对象的分配和释放问题.(其中包括两部分) 分配:内存的分配是由程序完成的,程序员需要通过关键字new为每个对象申请内存空间(基本类型除外),所有的对象都在堆(Heap)中分配空间. 释放:对象的释放是由垃圾回收机制决定和执行的,这样做确实简化了程序员的工作.但同时,它也加重了JVM的工作.因为,GC为了能够正确释放对象,GC必须监控每一个对象的运行状态,包括对象的申请.引用.被引用.赋值等,GC都需要进行监控. 2.什么叫java的内存泄露 在…
*.Java文件 问题:一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 答案:可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致.一个文件中可以只有非public类,如果只有一个非public类,此类可以跟文件名不同. 为什么一个java源文件中只能有一个public类? 在java编程思想(第四版)一书中有这样3段话(6.4 类的访问权限): 1.每个编译单元(文件)都只能有一个public类,这表示,每个编译单元都有单一的…
1.&和&&的区别? &:逻辑与(and),运算符两边的表达式均为true时,整个结果才为true. &&:短路与,如果第一个表达式为false时,第二个表达式就不会计算了. 2.在java中如何跳出当前的多重循环? 在循环语句外前面定义一个标号,然后在里层循环体的代码中使用带有标号的break语句,即可跳出循环. 比如: ok: for (int i = 0; i < 10; i++) { { for (int j = 0; j < 10; j…
前言 在别人追问我以下几个问题,自己在问题回答上不够全面和准确,对此自己把专门针对这几个问题进行总结! java相关问题 1.Java中构造方法跟普通方法的区别? 构造方法与普通方法的调用时机不同. 首先在一个类中可以定义构造方法与普通方法两种类型的方法,但是这两种方法在调用时有明显的区别. 1.构造方法是在实例化新对象(new)的时候只调用一次 2.普通方法是在实例化对象产生之后,通过"对象方法"调用多次. 如果在构造方法上使用了void,其定义的结构与普通方法就完全一样,而程序的编…
一.面向对象的三个基本特征: 1.封装,将对象的实现细节隐藏起来,并通过公共接口暴露相关功能: 2.继承,代码复用的表现,当子类继承父类后,子类作为一种特殊的父类,直接获得父类的属性和方法: 3.多态,子类对象可以直接赋给父类变量,但运行时依然表现出子类的行为特征,意味着同一个类型的对象在运行时可能表现出不同的行为特征 (PS:java不支持多重继承) 二.面向对象编程的一般过程大致为:OOA面向对象分析.OOD面向对象设计和OOP面向对象编程三个阶段.面向对象分析设计一般需用到UML工具.UM…
1.如何将数字输出为每三位逗号分隔的格式,例如“1,234,467”? package com.Gxjun.problem; import java.text.DecimalFormat; import java.util.Scanner; /* * 如何将数字输出为每三位逗号分隔的格式, * 例如“1,234,467”? * */ public class FloatDirve { public static void main(String args []){ Scanner reader…
转载请注明出处:http://blog.csdn.net/ns_code/article/details/8846697 1.使用浮点型数值时,默认的类型是double,后面加上f或F才被识别为float类型. 2.使用数组前一定要先开辟内存空间,当然也可以直接用静态赋值的方式. 3.Java中的基本数据类型变量为全局变量(确切地说,是类中的属性域的变量,java中是没有全局变量的)时,可以不赋值,直接使用,因为有默认值,但是作为局部变量时,就必须在赋值后才能使用,而对于引用数据类型,无论是全局…
1.字节流 1.1.字节输出流output 1.1.1.数据写入文件中 通过api查找output.找到很多,其中java.io.OutputStream,OutputStream: 输出字节流的超类. 基本特点: 1.操作的数据都是字节. 2.定义了输出字节流的基本共性功能. 3.输出流中定义都是写write方法.操作字节数组write(byte[]),操作单个字节write(byte). 子类有规律:所有的子类名称后缀是父类名,前缀名是这个流对象功能. 想要操作文件: FileOutputS…
开始整理线程之前,之前有个命令忘记整理了,先整理一下jar命令的使用 Jar包 其实可以理解是java的压缩包方便使用,只要在classpath设置jar路径即可数据库驱动,ssh框架等都是以jar包体现的 打包方式一:将指定的class文件打入到jar包中jar cvf xxx.jar Xxx.class yyy.class 打包方式二:将某个目录下的所有文件打入到jar包中jar cvf xxx.jar -C xxx/. 查看jar文件:jar -tf xxx.jar 运行jar包中的类:j…
网络编程(socket) 软件开发的架构: 两个程序之间通讯的应用大致通过从用户层面可以分为两种: 1是C/S,即客户端与服务端,为应用类的,比如微信,网盘等需要安装桌面应用的 2是B/S,即浏览器与服务端,为web类的,不需要安装应用,直接在浏览器上使用:轻量级,成本比较低, 实际上,B/S 架构也是C/S架构的一种特殊的形式. 网络基础: 在同一台机器上要想使两个py程序通信,可以通过写文件,来传输. 但是在不同机器上的两个py程序之间想要通信,就必须依靠网络. ip地址与ip协议: 规定网…
https://github.com/xbox1994/2018-Java-Interview 虽说不为面试做准备,仅仅就工作中遇到的很多Java问题,总是模棱两可的擦肩而过,真不是自己的风格. 还是要踏下心来好好提高下Java相关基础知识. 不多说了,一方面工作中不断对已有代码进行重构:另一方面对知识体系做一个梳理.…
一.Java Number & Math 类: 1.Number类: 一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte.int.long.double 等.然而,在实际开发过程中,我们经常会遇到需要使用对象,而不是内置数据类型的情形.为了解决这个问题,Java 语言为每一个内置数据类型提供了对应的包装类.所有的包装类(Integer.Long.Byte.Double.Float.Short)都是抽象类 Number 的子类. 这种由编译器特别支持的包装称为装箱,所以当内置数据…
运算符 运算符的分类: 算术运算符 赋值运算符 关系运算符 逻辑运算符 位运算符 三目运算符 自增自减运算符:++i:i先自加,再做其他运算:i++先运算再自加: --i先自减再做其他运算:i--先运算再自减: 赋值运算符 = : 这个等于号在Java中表示赋值的意思,真正数学意义上的相等是 == 在JavaScript当中还有 ===,表示类型和数值都相等   扩展赋值运算符: +=   -=   *=   /=   %= (使用扩展赋值运算符系统会自动帮我们强制类型转换) *关系运算符的结果…