哪吒人生信条:如果你所学的货色 处于喜爱 才会有弱小的能源撑持。

把你的前端拿捏得死死的,每天学习得爽爽的,关注这个不一样的程序员,如果你所学的货色 处于喜爱 才会有弱小的能源撑持。

感激不负每一份酷爱前端的程序员,不管前端技能有多奇葩,欢送关注加我入群vx:xiaoda0423

前言

心愿能够通过这篇文章,可能给你失去帮忙。(感激一键三连)

内存剖析,底层算法,JDK源码剖析(idea版本和jdk13

高级学习方向:Java入门,idea开发环境应用(idea,eclipse),面向对象根底和面向对象设计,Java虚拟机内存机制,内存剖析全面了解面向对象,内存剖析全面了解编程语言,面向对象深刻,数组和数据存储,异样机制和可视化bug追踪,罕用类和jdk底层源码剖析,容器的应用,io流技术,网络编程,多线程和并发编程,函数式编程。

程序员职业倒退:技术总监,资深码农,架构师,项目经理,ceo等。

常见的语言:c,java,python,c++,c#,javascript,php,swift,kotlin等。

把握:代码能力,面向对象分析能力,内存底层和源码剖析习惯,调试和查错能力。

javase java规范版本, ee企业级开发必学。

程序是事实逻辑的表白,程序的实质三个因素,变量,if语句,循环语句。思考因素(变量),判断条件,无限极。

表格思维去了解数据库存储数据

如何了解Java中的类和对象?-表格思维

  • 表构造对应:类
  • 一行数据对应:对象

xml文档:表构造对应:文档标签定义;一行数据对应:指定元素。

争对公司:理解该公司根本状况,偏重哪款技术,钻研该公司产品。

java版本

  • JavaSE(Java Standard Edition):标准版,定位在集体计算机上的利用。
  • JavaEE(Java Enterprise Edition):企业版,定位在服务器端的利用。

Java的个性和劣势

Java程序的运行机制

计算机高级语言的类型次要有编译型和解释型两种,而Java 语言是两种类型的联合。

Java首先利用文本编辑器编写 Java源程序,源文件的后缀名为.java;再利用编译器(javac)将源程序编译成字节码文件,字节码文件的后缀名为.class; 最初利用虚拟机(解释器,java)解释执行。

画了个图:

JVM、JRE和JDK

JVM (Java Virtual Machine)就是一个虚构的用于执行bytecode字节码的"虚构计算机"。它蕴含了:指令集,寄存器集,构造栈,垃圾收集堆,内存区域。JVM负责java字节码解释运行,边解释边运行,这样速度就会受到肯定的影响。

不同的操作系统有不同的虚拟机,java虚拟机机制屏蔽了底层运行平台的差异,实现了“一次编译,随处运行”。java虚拟机是实现跨平台的外围机制。

画了个图:

Java Development Kit(JDK)蕴含:JRE虚拟机,库函数,运行Java应用程序所必须的文件。

Java Runtime Environment(JRE)蕴含:Java虚拟机,库函数,运行Java应用程序所必须的文件。

JVM (Java Virtual Machine)就是一个虚构的用于执行bytecode字节码的"虚构计算机"。

JDK、JRE和JVM的关系如图:

如果只是运行Java程序,只须要JRE就能够,JRE通常十分小,其中包含了JVM;如果要开发Java程序,就须要装置JDK

JDK下载和装置

下载地址

现新:

点击”Accept License Agreement”,而后抉择对应的版本,下载即可

再进入JDK的装置目录

  • bin目录是存储一些可执行的二进制文件
  • lib存储相干jar
  • src.zipJDK相干JAVA类的源代码

环境变量Path的配置

C:\Program Files\Java\jdk-15.0.1

右键计算机,属性,高级零碎设置

肯定是英文分号而不是中文分号

测试JDK装置胜利

第一个Java程序

应用记事本开发第一个Java程序

public class helloWorld{    public static void main(String[] args){        System.out.println("Hello Java!我的掘金魔王哪吒作者");    }}

保留在d盘,文件名helloWorld.java,关上命令行窗口,进入java文件所在目录,执行javac helloWorld.java,生成class文件。

解释并运行阶段:java helloWorld,运行编译生成的helloWorld.class文件,输入后果。

常见谬误

  1. path变量配置谬误导致没有找到javac命令
  2. 可能是操作系统显示设置的问题,暗藏了文件的扩展名
  3. 找不到main办法,应该是main办法书写有误

罕用DOS命令

  • cd目录门路,进入一个目录
  • cd ... ,进入父目录
  • dir,查看本目录下的文件和子目录列表
  • cls,革除屏幕命令
  • Tab键,主动补齐命令

罕用Java开发工具

  • clipse官网网址
  • IntelliJ IDE官网网址:
  • NetBeans 官网网址

下载和装置eclipse

下载地址

抉择Eclipse IDE for Java Developers,依据本人装置的JDK,下载实现后,间接解压。进入目录,双击eclipse.exe即可应用。

工作空间指Java我的项目存储的目录,个别采纳默认工作空间目录即可。

在eclipse中创立Java我的项目,抉择new,Java Project,开始新建Java我的项目。

应用eclipse开发和运行Java程序

在src目录上右键单击,建设一个Java类。

Java我的项目的src目录和bin目录

  • src用于寄存源代码
  • bin用于寄存生成的class文件

桌球小游戏

ball.png

desk.jpg

import  java.awt.*;import javax.swing.*;  public class BallGame extends JFrame {          Image ball = Toolkit.getDefaultToolkit().getImage("images/ball.png");    Image desk = Toolkit.getDefaultToolkit().getImage("images/desk.jpg");         double  x=100;    //小球的横坐标    double  y=100; //小球的纵坐标    boolean  right = true;   //方向    //画窗口的办法    public void paint(Graphics  g){        System.out.println("窗口被画了一次!");        g.drawImage(desk, 0, 0, null);        g.drawImage(ball, (int)x, (int)y, null);                if(right){            x = x + 10;                    }else{            x = x - 10;        }                 if(x>856-40-30){    //856是窗口宽度,40是桌子边框的宽度,30是小球的直径            right = false;        }                 if(x<40){        //40是桌子边框的宽度            right = true;        }    }         //窗口加载    void launchFrame(){        setSize(856,500);        setLocation(50,50);        setVisible(true);              //重画窗口,每秒画25次        while(true){            repaint();             try{                Thread.sleep(40);   //40ms,   1秒=1000毫秒.  大概一秒画25次窗口            }catch(Exception e){                e.printStackTrace();            }                     }    }           //main办法是程序执行的入口     public static void main(String[] args){         System.out.println("掘金:魔王哪吒");         BallGame game = new BallGame();         game.launchFrame();     }      }

效果图:

import  java.awt.*;import javax.swing.*; public class BallGame2 extends JFrame {         Image ball = Toolkit.getDefaultToolkit().getImage("images/ball.png");    Image desk = Toolkit.getDefaultToolkit().getImage("images/desk.jpg");         double  x=100;    //小球的横坐标    double  y=100; //小球的纵坐标         double degree = 3.14/3;    //弧度。此处就是:60度         //画窗口的办法    public void paint(Graphics  g){        System.out.println("窗口被画了一次!");        g.drawImage(desk, 0, 0, null);        g.drawImage(ball,(int)x, (int)y, null);                          x  = x+ 10*Math.cos(degree);        y  = y +10*Math.sin(degree);                  //碰到高低边界        if(y>500-40-30||y<40+40){//500是窗口高度;40是桌子边框,30是球直径;最初一个40是标题栏的高度            degree = -degree;        }                 //碰到左右边界        if(x<40||x>856-40-30){            degree = 3.14 - degree;        }             }         //窗口加载    void launchFrame(){        setSize(856,500);        setLocation(50,50);        setVisible(true);                 //重画窗口,每秒画25次        while(true){            repaint();             try{                Thread.sleep(40);   //40ms,   1秒=1000毫秒.  大概一秒画25次窗口            }catch(Exception e){                e.printStackTrace();            }                     }             }         //main办法是程序执行的入口    public static void main(String[] args){        System.out.println("掘金:魔王哪吒");        BallGame2 game = new BallGame2();        game.launchFrame();    }     }

效果图如下:

点赞、珍藏和评论

我是Jeskson(达达前端),感激各位人才的:点赞、珍藏和评论,咱们下期见!(如本文内容有中央解说有误,欢送指出☞谢谢,一起学习了)

咱们下期见!

文章继续更新,本文 http://www.dadaqianduan.cn/#/ 曾经收录

github收录,欢送Star:https://github.com/webVueBlog/WebFamily