![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
文章平均质量分 65
尼斯湖超大水怪
我很懒,所以我懒得留下什么
展开
-
Java基础 之 多线程的简单介绍
文章目录前言生命周期线程什么是多线程如何创建一个线程继承Thread类实现Runnable接口实现Callable接口线程池Thread中的方法线程优先级多线程多线程的创建通过实现Runnable接口继承Thread类线程安全问题怎么解决方法一:同步代码块方法二:同步方法方法三:Lock锁死锁问题 前言 在学多线程之前,需要将什么是**程序、进程、线程**搞清楚 程序(program):是为了完成特定任务、用某种语言编写成的指令集合,即一段静态的代码 进程(process): 是程序的一次执行过程原创 2021-10-10 17:12:25 · 200 阅读 · 0 评论 -
static关键字的简单使用
先来说一下为什么要用static。 假如我们定义了一个Person类,这里面的人(实例对象)都具有一个共同的属性sex,如果我们在每个实例对象中都声明sex属性为boy(属性一般不会在类中就直接显式赋值)的话,就会显得代码臃肿。这个时候static就会派上用场了。 public class Test { public static void main(String[] args) { Person man1 = new Person(); man1.sex = "bo原创 2021-08-13 19:55:15 · 91 阅读 · 0 评论 -
面向对象特性之一 —— 多态性
多态性 多态性是我们java特性中最重要的一点。因为很方便,所以用的比较多。 java中的多态性主要是父类的引用指向子类的对象(或者子类的对象赋给对象的引用) 举个最简单的例子 public class Test{ public static void main(String[] args) { SuperClass s1 = new Subclass(); } } class Subclass extends SuperClass{ } class原创 2021-08-08 20:22:25 · 99 阅读 · 0 评论 -
继承性!——这不是很简单?
继承性! 前言 我们学完了类,知道了类是一个抽象的概念,需要我们去实例化后才能将这个概念具体化,但是,有的时候我们可能会遇到我们需要更具体的一个概念,然后才能实例化对象更加合适。所以这个时候我们的java的继承性就可以体现出来了。 先来具体例子 我们先创建一个动物的类 class Animal{ int age; String name; public void eat(){ System.out.println("饿饿,吃东西~"); }原创 2021-07-30 15:29:29 · 59 阅读 · 0 评论 -
面向对象(二) ——看完你就懂了
面向对象(二) 类的成员的解析 类的成员:属性、方法、构造器;内部类、代码块。 先来看看长啥样 类与对象 类 什么是类 类,可以理解为一个抽象概念,就如狗这个类是一个抽象概念,而金毛、哈士奇、泰迪则是狗这个类的对象,把狗这个抽象概念的给具体化了(创建了一个对象),即完成的类的实例化。通常讲类——>对象称为类的实例化。 类长啥样? 首先看我们刚创建一个文件时,我把这个文件命名为Test1 public class Test1 { } 这个样子就是定义了一个最简单的类,里面什么也没有。 在这一对原创 2021-07-23 09:56:33 · 63 阅读 · 0 评论 -
面向对象(一)——看完你就懂了!!
面向对象(一) 前言 面向对象又是一种编程思想,一种编程规范,现在众多的语言都有体现这种思想,例如Smalltalk、Eiffel、C++、Java、PHP。 面向过程也是一种编程思想,c语言就是一门面向过程的语言。 面向对象编程与面向过程编程的思想可以从字面意思来理解。 面向过程编程的思想 程序其实可以就分为三个简单的内容:我们要做什么、我们为什么要这样做、我们该怎样做。其中,面向过程的编程就是解决我们该怎么做的问题。 就拿人吃饭这一个简单的例子来说: 人吃饭,在面向过程的这一方面来讲,就是人去吃饭的这一原创 2021-07-21 23:22:08 · 137 阅读 · 2 评论 -
java基础 之 方法引用
前言 刚刚说了函数式接口与Lambda表达式,现在来讲一下Lambda表达式的另一个衍生,方法引用. 方法引用也是可以说是基于Lambda表达式的,其本质也是Lambda表达式,因此方法引用也是函数式接口的实例。 但是,要使用方法引用有前提,容我慢慢道来 方法引用 前提 实现类的抽象方法的参数列表和返回值类型,必须与方法引用的方法的参数列表和返回值类型保持一致。 例如我们调用System.out.println()这个方法 而消费型接口Consumer 的抽象方法void accept与PrintStr原创 2021-07-15 23:32:44 · 73 阅读 · 0 评论 -
Java 基础 之 if语句浅析
if语句 if语句的引入 if语句和switch-case语句是同一个类型,都是表达判断的语句。switch-case可以用作判断某种固定的情况,但在需要判断在某个范围的情况时,switch-case就不太适用,就需要使用if语句来.当然if语句也可以判断某种固定的情况。 if语句的格式 这个格式也有几种情况 第一种情况 举个例子,当某人考试(百分制)的分数高于60时,便奖励喜之郎果冻,低于60分时,就给爱吃的大嘴巴子。 int score = (int) (Math.random()*100); if(s原创 2021-07-14 13:21:00 · 157 阅读 · 0 评论 -
函数式接口简单解析
前言 我讲到了六种Lambda表达式的形式 总结来说就是 ->左边: lambda形参列表(其实就是接口中抽象方法的形参列表),且如果Lambda形参列表只有一个参数时,其一对()也可以省略 ->右边:lambda体(其实就是重写的抽象方法的方法体),且需要用一对{}包裹;如果Lambda体只有一条执行语句的时候(可能是return 语句),则可以省略这一对{}和return关键字 这两句话就是精髓。 现在,我来讲一下四个基本的函数式接口,这四种基本的函数式接口的结构是基于那六种Lambda表达原创 2021-07-11 14:06:11 · 111 阅读 · 0 评论 -
Lambda表达式之一
前言 在jdk1.8的时候,为了偷懒,为了程序的更加简洁,程序员在这个时候引入了Lambda表达式。刚开始看的时候必然会觉得难得雅痞,但熟悉以后便可以像写一个HelloWorld那么简单. 在讲Lambda之前,就需要知道什么是函数式接口 函数式接口 函数式接口本质上就是一个只定义了一个抽象方法的接口。为了更好的区别,我们需要加上注解 @FunctionalInterface(也可以不加,这只是为更好识别某个接口是否为函数式接口) @FunctionalInterface public interface原创 2021-07-10 21:01:19 · 121 阅读 · 0 评论 -
Java基础 之 switch-case
switch-case语句 switch-case是选择语句 结构 switch(表达式): case 常量1: 执行语句1; //break; case 常量2: 执行语句2; //break .... defalut: 执行语句 //break 说明 1.根据switch表达式中的值,依次匹配case中的常量,一旦匹配成功,则进入case结构中,调用完执行语句后,在当前case结构中没有break的情况下,仍然会执行后面case结构中的执行语句,直到遇到break或者switch结构的末原创 2021-07-09 23:15:51 · 361 阅读 · 0 评论 -
Java基础 之 for语句
for语句 一、循环结构的四个要素 1.初始条件 2.循环条件 ----->boolean型 3.循环体 4.迭代条件 二、结构 for(初始条件1;循环条件2;迭代条件4;){ 循环体3 }; 例如遍历1~10里面的所有整数 public class forText { public static void main(String[] args){ for(int i = 0;i <= 10;i++){//此时定义的i只有在for循环语句内才有用原创 2021-07-09 17:56:36 · 64 阅读 · 0 评论 -
java基础 之 基本数据类型之间的运算规则(不包括boolean型)
一、自动类型提升 当容量小的数据类型与容量大的数据类型做运算时,结果会进行自动类型提升,自动提升为容量大的数据类型。 即 byte、short、char --> int --> long -->float -->double 当byte、char、short三种变量之间做运算时,做过为int型 例如 public class NumberTest(){ public static void main(String args[]){ byte b1 = 2; short s1 =原创 2021-07-04 23:22:58 · 110 阅读 · 0 评论