- 博客(15)
- 收藏
- 关注
原创 生产者与消费者问题
在Java中就有当多个线程共享一个数据时,如果处理不当,容易出现线程的安全问题。Java中就出现了关键词来声明同步方法当一个对象被修饰,任何时候只有一个线程能访问该对象当一个方法被修饰,当一个线程要执行该方法时,其他线程要执行该方法则要等待该线程执行完该方法。模型如下:...
2022-06-04 22:16:26 123
原创 多线程学习记录
多线程Java 的多线程就是一个类,这个类可以对它的线程进行控制;作用:多线程比多进程具有绝对优势提高处理机与设备的平行性可提高资源的利用率与进程推进速度怎么写一个多线程方法1:构建Thread子类对象基础Thread类后,重写他的run方法运行该线程的方法就是先引入其对象,在调用其中的start()方法 public class Example extends Thread { run() { for(int i=0;i<6;
2022-05-29 23:44:56 60
原创 IO的基础学习笔记
IO的基础学习笔记IO的两大分类:字节流与字符流:字节流(以Stream结尾)其中又有两大接口:InputStream 与 OutputStream接口。字节流能输入,输出任意类型的文件:文本文件,图片,视频等。接下来展示其中访问图片的代码:import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;public class TextIOStream { pub
2022-05-26 13:05:20 83
原创 Java 集合结构
以下仅为个人对集合结构的初步认识:主要分为三大部分:Iterator(迭代器)CollectionMapIterator(迭代器):Iterator接口它是一种访问集合的方法的接口LinkIerator接口:Iterator的实现类,有了更多的的、方法List(集合):AbstractCollection是Collection的唯一实现类,它实现了一些方法,也定义了一些抽象方法。是一个抽象类。Queue(interface):队列:先进先出,后进后出Set(inte.
2022-05-12 13:13:55 125
原创 Java 接口
java 接口接口的特点:接口是由interface修饰,接口本质上一个类。但这个类比较特殊,里面绝大多数都是抽象方法(没有方法体),极少有人在里面写static修饰的静态方法(static修饰的可以有方法体);注意:接口不能被实例化接口没有构造方法继承该接口的类必须重写接口中的所有抽象方法如何写一个接口:public interface Car{ public abstract void run();}public class hh implements Car {
2022-05-04 22:03:05 293
原创 Java 创造简易窗口
import javax.swing.*;import java.awt.*;public class Window extends JFrame{ public void lanchFrame(){ this.setVisible(true); //设置窗口是可见的 this.setTitle("植物大战僵尸");//设置标题 Container con = this.getContentPane(); con.setBackg
2022-04-24 19:54:08 583
原创 Java继承
继承常用来解决的问题:代码重复加强父类但这篇文章不讲怎么写继承,具体讲的什么我也不是很清楚假设我创建了一个Animal的父类,又接着创建一个Dog的子类;在main方法这样创建一个名为a的Animal型的dog的对象Animal a = new Dog();//父类型引用指向子类型对象(其中也涉及“向下转型”)在JVM的堆栈图如下:只能在继承的条件下,才能使堆,栈类型不一样编译过程会进行静态绑定:目的:确保其能运行。以该例为例:在Animal与Dog都写了一个eat()的
2022-04-06 21:19:23 70
原创 静态与实例代码块
静态代码块与实例代码块静态代码块有static修饰的代码块即static{};特点:会在类加载中被执行,用其他话说就是会比其他所有代码先执行。只会被执行一次,无论他所在的方法被执行几次实例代码块无任何修饰,仅用{};特点:在构造方法执行前执行,因而它有检测够着方法是否执行的作用。例子: public class Text{ public static void main(String[] args){ Student aXX = new Student(); aXX.
2022-03-30 21:59:16 73
原创 内存(JVM)
JVMJVM主要包括:程序计数器(Program Counter),Java堆(Heap),Java虚拟机栈(Stack),本地方法栈(Native Stack),方法区(Method Area)这里我主要介绍 堆 栈 与 方法区:方法区:主要存放 代码片段,静态代码块,static修饰的变量,常量。注意一下:1.其中静态代码块,既static{}里面的将优先于其他代码执行。2.常量池在java 1.8版本之前是在方法区中,但在Java 1.8之后被移至堆中。堆主要存放对象。注意:
2022-03-28 01:10:15 563
原创 方法重构(overload)
方法重载(overload)举个简单的例子:当你编写一个A+B给用户时,你无法确认A与B是哪种数据类型时,例如你写一个int与int相加时,但用户不知情输入一个浮点型,那么就不得了了。但又假设用户知道是int型时,但他又想算浮点型相加,那么他是不是又要用到新的方法,但这样有需要找新的方法名岂不是很麻烦。因此方法重载就有了意义。方法重载指的是在一个类里面允许有多个方法名相同的方法,但这样的方法之间又有要求(不然又怎么在调用的时候分辨呢)。要求就是:同名方法中的参数的数据类型或个数不同class Ti
2022-03-20 21:23:44 1067
原创 Java this的作用
This 的作用:当实例变量和局部变量重名,JAVA 平台会按照先局部变量、后实例变量的顺序寻找。因此在引用方法或构造器中,局部变量会覆盖实列变量;例:class Demo{ int a = 5;//此a为全局变量; void test(int a){//此a为局部变量; a=a; System.out.println(a); }}public class This{ public static void main(String args[]){ Demo dem
2022-03-13 20:14:45 681
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人