java基础
该走的弯路,一步都不会少。
大家好,世界之大很高兴能与你相遇,缘分中带有一丝丝的必然,现在我还是一个大学生,我希望能写一些博客尽自己的微薄之力帮助你学习,我说的不一定是对的,只供参考,更希望你能帮我纠正错误,我会尽量避免错误,拿最好的代码和知识回馈大家,谢谢大家的支持。
展开
-
面向对象与面向过程的区别
前言:如果你很想搞明白面向对象是什么,面向过程是什么,或者说二者之间的区别是什么,那么就花费一点时间来研读一下这篇博客,你一定会有很大的收获的!一、面向对象与面向过程的区别面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的...转载 2019-04-11 09:02:24 · 310 阅读 · 0 评论 -
实现斗地主案例
java案例-实现斗地主游戏案例1.需求分析:模拟斗地主游戏,利用集合存储,可以看分派好的牌2.具体实现:(1)在牌盒(字符串数组)存储四个花色:String color[] = {"♠","♥","♣","♦"};(2)按照斗地主游戏规则由大到小:String number[] = {"2","A","K","Q","J","10","9","8","7","6","5","4"...原创 2019-05-06 13:11:01 · 903 阅读 · 0 评论 -
Iterator迭代器
java.util.Iterator接口:迭代器(对集合进行遍历)两种方法:1、boolean hasNext()如果迭代具有更多的元素,则返回true 。 (换句话说,如果next()返回一个元素而不是抛出一个异常,则返回true )2、E next()返回迭代中的下一个元素。重点:使用集合中的方法iteration()获取迭代器的实现类对象,使用接口来接收(多态)使用iterat...原创 2019-05-05 18:36:35 · 165 阅读 · 0 评论 -
Collection集合
集合是java提供的一种容器,可以存储多个数据。集合和数组的区别?1、数组的长度是固定的,集合是可变的,随着数据加而加。2、数组存储的是同一种类型,可以存储基本数据类型的值,而集合存储的都是对象,而且对象的类型可以不一致,一般开发对象多的话,会用集合。集合框架图collection的一些方法的使用import java.util.ArrayList;import java.util...原创 2019-05-05 17:25:20 · 107 阅读 · 0 评论 -
管理文件和目录的类是什么?
管理文件和目录的类是什么?File类中常见的几个方法。方法作用File(String pathname)根据指定的路径创建一个File对象createNewFile()若目录或者文件不存在,就返回false,否则创建文件或者文件夹delete()删除文件或者文件夹isFile()判断这个对象是否是文件isDirectory()判断这个对象是...原创 2019-04-25 11:04:25 · 660 阅读 · 0 评论 -
Java IO流的实现机制
Java IO流的实现机制在Java中,输入和输出都被称为抽象的流,流可以看做是一组有序的字节集合,就是数据在两个设备之间传输。流的本质本来就是数据传输,根据类型的不同可分为两大类。字节流和字符流。字节流是以字节(8bit)为单位包含两个抽象类:InputStream(输入流)和OutputStream(输出流)。字符流是以字符(16bit)为单位,根据码表映射字符,一次可以读多个字节,...原创 2019-04-25 11:03:12 · 687 阅读 · 0 评论 -
计算机网络
计算机网络基础Q:五层协议的体系结构分别是什么?每一层都有哪些协议?https://blog.csdn.net/cainv89/article/details/46885197应用层,应用层确定进程之间通信的性质以满足用户的需要。应用层不仅要提供应用进程所需要的信息交换和远地操作,还要作为互相作用的应用进程的用户代理(user agent);运输层任务是负责主机中两个进程间的通信;网络...转载 2019-04-27 19:35:12 · 153 阅读 · 0 评论 -
final、finally和finalize有什么区别?
finalfinal用于声明属性、方法和类,分别表示属性不变,方法不可覆盖和类不可以被继承。final属性:被final修饰的变量不可以变。一个是引用不可变,第二个是对象不可变。被final修饰的引用地址不能被改变,但是可以对这个引用的内容进行更改,可以appen一些内容进去。所以被final修饰的必须初始化。final的方法:方法不能当方法声明为final时,该方法不能被任何子类重写这个...原创 2019-04-27 17:13:15 · 527 阅读 · 0 评论 -
break、continue以及return有什么区别?
breakbreak用于直接强行跳出当前循环,不再执行剩余代码。可以跳出for ,while,do while 但不跳出函数。当多层循环嵌套,并且break语句出现在嵌套循环中的内部循环时,它将仅仅终止了内层的循环,不影响外层的循环的执行。continuecontinue用于停止当次的循环,回到循环的起始处,进入下一次的循环操作。continue之后的语句不再执行,用于跳过循环体的一部分语...原创 2019-04-27 16:35:12 · 213 阅读 · 0 评论 -
this与super有什么区别?
this与super有什么区别?this在Java中,this用来指当前实例对象,它主要就是区分对象的成员变量还是方法的形参,当成员变量和方法的形参相同名字的时候,就会用覆盖成员变量。class Student{ String name ; //正确的写法 public Student(String name){ this.name = name ;} //错误的写法...原创 2019-04-18 12:08:12 · 678 阅读 · 1 评论 -
抽象类与接口有什么异同?
抽象类与接口有什么异同?什么是抽象类呢?如果一个类中包含了抽象方法,那么这个类就是抽象类。可通过类或者方法中是否有abstract来判断,(abstain只能修饰类或者方法,不能修饰属性)。那什么是接口呢?接口是指一个方法的集合,接口中的所有方法都没有方法体,在java中接口是通过interface关键字来实现的。**## 注意事项**抽象类在使用过程中不能被实例化,但是可以创建...原创 2019-04-18 11:15:54 · 627 阅读 · 0 评论 -
重载和覆盖有什么区别?
重载和覆盖有什么区别?重载和覆盖都是java多态性的不同表现。其中重载是一个类中多态的一种表现,指的是一个类中定义了多个同名的方法,他们要么参数类型不一样,要么参数的各数不一样,或者不同的参数顺序,从而实现重载。重载注意事项重载是通过不同的方法参数来区分的。不能方法的访问权限、返回值类型和抛出的异常类型来重载。对于继承,如果父类的方法是私有的,就不能再子类中实现重载,如果子类也定义一个...原创 2019-04-18 10:21:56 · 7413 阅读 · 1 评论 -
java优先级最高的运算符
这是一个优先级的口诀,便于大家的学习,希望对大家有用单目乘除为关系,逻辑三目后赋值。单目:单目运算符+ –(负数) ++ – 等乘除:算数单目运算符* / % + -为:位移单目运算符<< >>关系:关系单目运算符> < >= <= == !=逻辑:逻辑单目运算符&& || & | ^三目:三目单目运算符A &g...转载 2019-04-18 09:54:49 · 11861 阅读 · 0 评论 -
静态方法注意事项,静态的内存图
静态方法静态方法的注意事项一旦使用了static关键字,成员变量就不属于自己的,而是属于类,只要是本类的对象,都共享同一个数据。多个对象共享同一份数据,比如同班同学的课室都是相同的,所以可以用静态声明,还有银行里的余额对于存款取款的余额是相同的,所以可以static共享。不管是静态方法还是静态变量,都推荐使用类名调用。静态方法不能直接调用非静态。原因是在内存中,是先有静态内容,后有非静态...原创 2019-04-15 11:22:44 · 581 阅读 · 2 评论 -
面向对象在内存空间里运行图
面向对象在内存空间中栈、堆和方法区中运行。方法区存的就是一些方法调用成员变量时,利用地址值去堆里找,然后重新赋值。在当调用成员方法时,红色线条到绿色线条,是使用地址值来调用的,call成员方法进栈,也叫压栈,压了main方法,执行后就出栈黑色的×就是出栈。然后是执行main里的sendMessage。...原创 2019-04-17 11:41:55 · 228 阅读 · 0 评论 -
数组创建后就不能改变
在运行期间,数组创建后就不能改变数组一旦创建,程序运行期间,长度不可以改变。用length去获取长度。如图,arrayC 先声明了一个长度为3的数组,然后把arrayC改变成了5(但并没有改变数组长度)。看图中,new int[5]是形成了另一个数组,改变了他的地址值,并没有改变数组,老数组是不改变的,这个很重要。...原创 2019-04-09 16:02:07 · 2876 阅读 · 8 评论 -
数组的内存图 java内存划分
数组的内存图一个数组运行时需要的内存,(栈,堆,方法区)。原创 2019-04-08 10:53:37 · 219 阅读 · 0 评论 -
面向对象有哪些特征
面向对象有哪些特征面向对象的主要特征包括抽象、继承、封装、多态。一 、抽象抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。简单来说就是从众多的事物中抽取共同的、本质性的特征,而舍弃其非本质的特征。例如苹果、香蕉、生梨、葡萄、桃子等,它们共同的特性就是水果。得出水果概念的过程,就是一个抽象的过程。二、继承继承是一种联结类的层次模型,明确的表述共性的方...原创 2019-04-11 09:36:26 · 690 阅读 · 0 评论 -
查找2进制中1的个数
这个题目有很多种解法,我们可以一一列举出来第一种分析:在32位的二进制中,给出一个1001010的一连串的数,我们就可以联想到与 1& 得出想要的结果。移动可分为两种,可以将二进制数向右移动,或者将1向左移动向右移动时&出来的得数要和1向右的得数相等就证明有1。 Scanner sc=new Scanner(System.in); int s=sc.nextInt(...原创 2019-06-06 23:25:18 · 467 阅读 · 0 评论