myeclipsejava基础使用笔记

     2022-03-16     450

关键词:

 

一、Java开发平台

JavaSE  标准版 Java应用程序 application  五子棋、计算器、qq

JavaEE  企业版  Java企业级应用

JavaME 微型版  小型设备    Android取代了

 

二、Java 术语

jdk Java开发工具包  

JRE java运行环境

JVM java虚拟机

GC  Java内存对象垃圾收集机制  自动懒惰lazy回收

API  应用编程接口  对应JavaDoc文档

       java.lang.string类    字符串类

       java.lang.System类   系统类

IDE  集成开发环境   MyEclipse8.5(版本越高越占内存)

 

三、Java编程步骤

1、下载并安装JDK

2、配置系统环境变量

JAVA_HOME     JDK的安装路径

PATH               命令的搜索路径   javac   java命令

CLASSPATH     类的搜索路径

配置好后可以在命令行中反复使用(仅配置依次

3、编辑

4、编译  javac  Hello.java ->Hello.class    启动编译器

5、运行  java  Hello     启动虚拟机

 

四、Java注释  Comment

代码和文档(注释)同样重要

1)单行注释   //

2)多行注释   /*          */

3)文档注释   /**            */

 

五、变量

变量名  对应变量的值,具备数据类型

第一次声明变量必须明确指定数据类型

String name = “张三丰”;

name = “张三”;

int high = 180;

high= 190;

 

项目中,形容项目规模:30人/月

30人*1个月

1人*30月

5人*6月

平均没人一天写10个类,一个月20天;

一共:5*10*20*6=6000类 *.class

                 MyEclipse的使用

一、Java包 关键字package

1、含义:

包好比平时的目录,一层包对应一层目录结构,分包的好处:能够将.class类分门别类的管理。

在D:\下新建一个文本文档

2、语法

在源代码的第一行有效位置:

package  包名;

包名的规范:全部小写,多个包之间使用  .  分隔

一旦给类起了包名,就需要使用全名(全限定名)   包名.类名

package day01;

项目中包层次比较深:

package  公司域名.项目名.模块名.子模块名;

例1、souhu Java 第一天的代码: package com.sohu.javase.day01;//com.sohu  是域名

                 第二天的代码: package com.sohu.javase.day02;

package com.sohu.javase.day01;

class Hello{       //类名com.sohu.javase.day01.Hello

}

例2、IBM公司、员工管理系统ems、员工类Emp

package  com.ibm.ems.entity;  //实体包

class Emp{       // 类名是com.ibm.ems.entity.Emp

}

例3、www.bypp.com.cms

package com.bypp.cms.entity;

class Duck{

}

例4、

//包的声明只能在源代码的第一行有效位置
package day01;
public class Hello{
public static void main(String[] args){
System.out.println("Hello");
}
}

编译:D:\ javac -d . Hello.java

-d具备两次含义:

1)制定编译后的 。class文件的路径  。当前目录

2)如果我们指定了包,会安装包的层次自动生成与之对应的目录结果

运行:java com.day01.Hello

 

使用MyEclipse实现MyInfo.java

IDE使用技巧:

1)选择工作区

2)新建Java工程(Java项目  Java project)

在目录中有:

src目录  sourse  源代码文件目录   *.java

bin目录   binary  字节码文件目录   *.class

3)在src下新建一个类

依次点击:file ->new -> class;

包名:day01;

类名:Hello

4)编辑字体

5)完成编辑

6)编译  保存立即编译   Ctrl + s

如果编译通过,没有红色下划线;

如果编译出错,出现红色下划线;

Syntax error, insert ";" to complete BlockStatements

7)运行

依次右击源代码 -> Run As -> Java Application

 

注意:alt + /  快速提示并生成固定代码

main     主方法

syso     系统输出

技术分享

二、标识符  identifier

标识符用于表示代码的各种名称:包名、类名、方法名、变量名、常量名等。

1、标识符的规则5条  必须遵守,否则编译出错;

(1)必须由字母、数字、下划线、&组成,首字母不能是数字;

       字母:a-z A-Z  52个;

       数字:0-9        10个;

(2)不能是Java关键字; 50个 + 3个自面值

关键字的特点:全部小写  class、int、double、static、public。。

字面值:  true、false、null

(3)区分大小写(大小写敏感Case Sensitive)

String与string、Int与int

(4)长度没有限制

ArrayIndexOutOfBoundsException

(5)支持中文,但不推荐使用

int 年龄 = 23;

问题:

2、标识符的规范5条   业务习惯

(1)类名、接口名每个单词首字母大名

(2)变量名、方法名每一个单词首字母小写,之后的每一个单词首字母大写

(3)包名全部小写,包名之间 . 分隔;

(4)常量全部大写,单词间使用 _ 分隔;

(5)见名知意

name  n1

age    a1

ArrayIndexOutOfBoundException    数组小标越界异常

 

三、Java关键字  key words

在语言中表示不同的功能,特点是全部小写。

练习:从控制台提示并输入name和age,并输出

包名:day02,类名:TestTestScanner 提供main方法

需要使用一个类:java.util.scaner类,扫描器类

java.util包 工具包  utilits(工具)

创建了一个扫描器类的对象sc

scanner sc = new Scanner(System.in);

String name = sc.next();  输入String数据,调用扫描器对象的next()方法

特点:是一个阻塞的方法,等待着用户的输入,知道用户输入完数据后,将结果返回,才继续往后执行

具体步骤:

1、创建扫描类的对象;

2、打印“请输入名字”;

3、输入anme;

4、打印“请输入年龄”;

5、输入age;

6、打印输出name和age;

注意:

使用Scanner,需要import语句

import语句用于声明使用的类在哪个包下。

以下这些不用写import语句:

1)同包下的类无需import直接使用;

2)java.lang包下的类无需import直接使用;

3)lang包 language语言包太常用了,m默认直接使用

比如:java.lang.String类,字符串类

        java.lang.System类,系统类

        java.lang.Math类,算数类

 

注意:import java.util.*;表示java.util包下的所有类都可以使用了,但不包括子包(只管一层)

*是通配符,建议项目中需要具体类名,,效率高

JDK提供丰富的API(类和接口)具备丰富的功能,通过不同的包来管理:

        java.lang.String类,字符串类

        java.lang.System类,系统类

        java.lang.Math类,算数类

        java.util.Scanner类  扫描类

与之对应的是一个文档:JavaDoc文档/API文档,是一个HTML网页格式文档。

 

四、Java的数据类型

1、计算机表示数:二进制,逢二进一;能表示2^4=16种,

2、Java表示数:正数、负数和0

二进制数的补码新式,使用最高位作为符号位(最左边的)——0是正数,1是负数

正数的补码:就是原码;   负数的补码:对应正数的原码,按位取反+1;

4位二进制补码:能表示2^4=16种,表示数范围:-8—7,-2^3—2^3-1

8位二进制补码:能表示2^8=256种,表示数范围:-128—127,-2^7—2^7-1;

01111111——127    1+2+4+8+16+32+64=127

......

00000000——0

11111111——(-1)  00000000+1=00000001 —> 1  —> -1

......

10000000——-128

1)已知8位二进制数补码11111111,翻译成十进制数,由于最高位是1,负数,(按位取反 + 1)

例:11111111翻译成十进制数  —> 00000000 + 1 —> 00000001 —> 1 —> -1;

2)已知十进制数 -1 转化为8位二进制数的补码:(1的原码按位取反 +1)

  用 1 的二进制数按位取反 + 1:  00000001 —> 11111110 + 1 —> 11111111   (-1的补码)

4、Java数据类型的特点

Java是一种强类型的语言,第一次声明变量,必须明确指定数据类型,第一次声明变量,必须明确指定数据类型。

Java语法比较严谨、安全、规范。

String name = "Tli";  //字符串字面值

name = "Lili";

name = 123;  //整数字面值,类型不兼容,编译无法通过

JavaScript 就是一种弱类型语言:

var n1 = ”Tli“;

n1 = 123;

5、Java数据类型的分类(重要)

(1)基本类型,也称为简单类型、原生类型(prime)    8种

byte   short    int     long      char      float           double       boolean

字节    短整型   整型   长整型   字符  单精度浮点型  双精度浮点型   布尔型

能够表示数据的:byte   short  int   long   char  float   double;

能够表示整数:byte   short  int   long   char;

能够表示小数:float   double;

能够表示布尔:boolean (true、false);

能够表示字符:char;

常用的:int  long  double  char  boolean ;

底层存储:按照字节byte为单元,按二进制位存储。

(2)引用数据类型,也称为复杂类型、对象类型   无数种,class可以不断定义的

底层存储:引用(对象内存地址) —> 内存对象  (钥匙—房间——东西)

按照表现形式分为5种:

类class   接口interface  数组String[]/int[]  枚举  标注

(3)void 无返回值类型

注意:不能用来定义变量,只能用于方法的返回值类型,表示无需返回任何结果。

public static void main(String[] args){ ... }

public void playGame(){ ... }

  

练习题:写Java程序:TestEmpScanner.java

从控制台提示并输入员工的基本信息,并在控制台一次输出所有信息。

员工名字name、员工年龄、员工薪水salary

提示:需要使用扫描器类java.util.Scanner

思路:面向过程编程思想

步骤:

1、创建扫描器对象sc

2、提示并输入name

 

主要概要:java编程步骤

1、命令行开发方式

(1)编辑   java源程序  Hello.java

纯文本编辑器,比如记事本、Editplus等

package day01;

public class Hello{}

(2)编译  javac -d      .      Hello.java 

 -->\day01\Hello.class

(3)运行java   day01.Hello

2、使用IDE MyEclipse  提高开发效率

(1)编辑

新建class

(2)编译  

(3)右击源代码Run As —>java application

二、Java注释

三、标识符:用于jdk或程序员为代码中的要素命名

1字节 =8二进制      1byte = 8bit

四、关键字 key words

关键字全部小写,表示不同的功能 

五、Java数据类型

现实生活中用十进制数表示数;计算机中用二进制数表示数;十六进制、八进制数是为了程序员更方便表示二进制数;Java中用二进制数的补码形式表示数(正数的补码就是原码,负数的原码是用其正数的原码按位取反+1)

-5的8为二进制数补码:0000 0101 —> 1111 1010 +1 = 1111 1011

 







c++笔记--面向对象(oop)编程基础--stl入门与使用

STL入门与使用 查看详情

java笔记:udp基础使用与广播(代码片段)

...器使用广播广播地址获取广播功能演示总结目的UDP是比较基础常用的网络通讯方式,这篇文章将介绍Java中UDP基础使用的一些内容。本文中使用PacketSender工具进行测试,其官网地址如下:https://packetsender.com/作为客户端... 查看详情

node.js笔记:udp基础使用(代码片段)

...的作为客户端使用作为服务器使用广播总结目的UDP是比较基础常用的网络通讯方式,这篇文章将介绍Node.js中UDP基础使用的一些内容。本文中使用Node.js版本为v16.17.1,UDP相关官方文档如下:https://nodejs.org/dist/latest-v16.x/d... 查看详情

node.js笔记:udp基础使用(代码片段)

...的作为客户端使用作为服务器使用广播总结目的UDP是比较基础常用的网络通讯方式,这篇文章将介绍Node.js中UDP基础使用的一些内容。本文中使用Node.js版本为v16.17.1,UDP相关官方文档如下:https://nodejs.org/dist/latest-v16.x/d... 查看详情

.netcore基础学习笔记ocelot网关配置使用(代码片段)

1.添加网关服务本身swagger配置services.AddSwaggerGen(options=>options.SwaggerDoc("ApiGateway",newOpenApiInfoTitle="网关服务",Version="v1"););2.安装ocelot包 3.添加ocelot配置services.AddOcelot().AddConsul();  查看详情

python基础—conda使用笔记(代码片段)

Python基础,关于conda的一些使用笔记记录Python基础—conda使用笔记1.环境配置由于用conda管理虚拟环境真滴很方便,所以主要使用conda,就不单独去装Python了。1.1.Miniconda3安装Miniconda3官网下载地址:MinicondaMiniconda3清华镜像下载:清... 查看详情

perl基础笔记:使用cpanm安装perl模块

cpanm其实只是一个可执行文件而已。将它下载到bin目录,然后添加执行权限就可以用了。$sudowgethttp://xrl.us/cpanm-O/usr/bin/cpanm;sudochmod+x/usr/bin/cpanm 使用cpanm,参数名直接为模块名称即可。如:$sudocpanmCGI::Session$sudocpanmTemplate 为... 查看详情

javascript学习笔记--基础知识

1.javaScript能做什么?(1)写入HTML输出document.write("<h1>Thisisaheading</h1>");注意:只能在HTML输出中使用document.write。如果在文档加载后使用该方法,会覆盖整个文档。(2)对事件作出反应<buttontype="button"onclick="alert(‘welcome... 查看详情

2022年大数据基础讲课笔记

一、讲课笔记项目一、Linux基础大数据讲课笔记1.1安装配置CentOS[在OpenStack私有云上安装配置虚拟机]大数据讲课笔记1.2Linux用户操作大数据讲课笔记1.3Linux目录操作大数据讲课笔记1.4进程管理大数据讲课笔记1.5使用Vim编辑器大数据... 查看详情

2022年大数据基础讲课笔记

一、讲课笔记项目一、Linux基础大数据讲课笔记1.1安装配置CentOS[在OpenStack私有云上安装配置虚拟机]大数据讲课笔记1.2Linux用户操作大数据讲课笔记1.3Linux目录操作大数据讲课笔记1.4进程管理大数据讲课笔记1.5使用Vim编辑器大数据... 查看详情

jquery基础笔记

varjq=jQuery.noconflict();用于处理命名冲突。jquery使用CSS选择器来选取元素jQueryhtml()方法适用于HTML,不适用于XML文档。jQuery.ajax()用于执行异步HTTP请求如需使用jQuery,需要引用Google的jQuery库toggleClass()用于添加或删除被选元素的一个或... 查看详情

javascript笔记基础篇

基础篇主要是总结一些工作中遇到的技术问题是如何解决的,应为本人属于刚入行阶段技术并非大神如果笔记中有哪些错误,或者自己的一些想法希望大家多多交流互相学习.1.ToFixed()函数今天在做Birt报表时,要显示一列百分比的数... 查看详情

objective-c基础笔记(7)foundation中的经常使用结构体

一、NSRangeNSRange的定义:typedefstruct_NSRange{NSUIntegerlocation;NSUIntegerlength;}NSRange;NSRanage的使用:NSRangerange=NSMakeRange(8,10);NSLog(@"location:%zi",range.location);NSLog(@"length:%zi",range.length 查看详情

javascript笔记——基础知识

Function类型函数function不需要返回类型(不是没有返回值),参数也不需要指定类型,更为特殊的是函数竟然是个类,可以通过new出来varbox=newFunction(‘num1‘,‘num2‘,‘returnnum1+num2‘);这样的写法是完全正确的,但不推荐使用,因... 查看详情

java基础笔记7

OOP面向对象有三个特点    1.封装    封装的好处:起到一定的保护作用    封装的是属性.     java如何进行封装;      1.使用private关键字对象属性封装.只能在本类中使用。     2.为... 查看详情

学习笔记第十五章javascript基础

第15章  JavaScript基础【学习重点】了解JavaScript基础知识熟悉常量和变量能够使用表达式和运算符正确使用语句能够掌握数据类型和转换的基本方法正确使用函数、对象、数组等核心知识和技法能够编写简单的脚本,解决... 查看详情

maven基础-02-笔记(代码片段)

Maven基础-02-笔记Maven项目搭建(手动/IDEA)1、手动搭建maven项目1.1创建maven项目结构1.2项目构建命令mvn2、IDEA工具搭建maven项目2.1不使用原型创建项目2.2使用原型(原型骨架)创建项目-Tomcat插件Maven项目搭建(手动/IDEA)我们回顾一下maven规... 查看详情

笔记区块链eth学习1--基础概念与钱包使用

ETH基础概念与钱包使用介绍简介开发者社区大相对成熟应用入手方便学习JS结合紧密,方便开发人员上手以太坊基础整体介绍钱包、测试网、简单交易客户端,搭建私链深入了解账户和合约以太坊交易、gas费和EVN编程与应... 查看详情