前言

大家好,今天带来Java入门第一行代码的概述,希望你们喜欢

第一行代码

学习Java基础课程,学会使用eclipse,eclipse为Java集成开发坏境IDE,创建第一个Java源文件代码:

public class HelloWorld{
public static void main(String[] args){
System.out.println("hello world");
}
}

要点:

  • HelloWorld为类的名字
  • public static void main(String[] args) 为主方法
  • System.out.println("hello world")为打印输出,并在控制台显示 hello world
  • public 为访问修饰符,表示公开的访问类

Java为面向对象的语法

  • 什么是面向对象?

    答:在Java中一切皆对象;可以理解为现实世界中的人,物,都可以看做为对象。

在一个Java的类中,该类可以为对象,那么类就是一个对象,一个对象就如人,它有方法和属性,即为动作和状态的特征。

//建立一个人的类
public class Person{
String name; //人具有姓名的属性
String age; //人具有年龄的属性
public void eat(){
System.out.println("人具有吃的方法");
}
}

变量的定义

什么是变量,即为可以变化的量,示例

int age = 12;

  • 其中 int 为变量的数据类型,表示整数
  • age 为变量
  • “=” 为赋值操作符,把右边的值赋值给左边的变量
public class Person{
int age = 12;
public static void main(String[] args){
System.out.println(age);
}
}

介绍八种基本变量的类型

八种基本数据类型

  • 整型 4种:byte(8位),short(16位),int(32位),long(64位)
  • 字符型 1种:char(16位)
  • 浮点型 2种:float(32位),double(64位)
  • 布尔型 1种:boolean(1位)(true,false)

String类型(独立来讲,不是基本数据类型,为final修饰的)

String类型一旦被创建,就不能够被更改。字符串类型的表达效果,示例:String name = "Vic"

强制类型转换和自动类型转换

  • 数据类型的转换

    数据类型的理解:规则口诀

    小到大自动,大到小强制,表示小杯子里的水可以倒入大杯子里,而大杯子里的水倒入小杯子里,会出现溢出。

/ 转换的数据类型比较 /

byte->short(char)->int->long->float->double

Java中的命名规范

如果有人问Java中的命名规范,你可以简单的说:英,数,$,_ ,(第一位不能为数字),不能为关键字。

成员变量和局部变量

声明在方法体外的变量为成员变量,声明在方法体内的变量为局部变量。

Final修饰符

上述表达final修饰的,为不可变得值,final可以修饰变量,修饰类,修饰方法。

  • 被修饰的变量,只能被赋值一次
  • 被修饰的类,不能被继承
  • 被修饰的方法,不可被重写

Static关键字的理解

答:“ static方法就是没有this的方法。在static方法内部不能调用非静态方法,反过来是可以的。而且可以在没有创建任何对象的前提下,仅仅通过类本身来调用static方法。这实际上正是static方法的主要用途。” ---《Java编程思想》

static代码块,只会在类加载的时候执行一次。static变量不需要创建对象就可以引用。

静态成员变量可以通过对象访问,只要访问权限足够就可以。

静态代码块,随着类的加载而执行,只执行一次。

class StaticDemo{
static{
System.out.println("静态代码块");
}
void show(){
System.out.println("方法");
}
} public class Test{
public static void main(String[] args){
new StaticDemo().show();
new StaticDemo().show();
}
}
//result
静态代码块
方法
方法
public class Test{
static{
System.out.println("静态");
}
public static void main(String[] args){
System.out.println("静态main");
}
}
//result 静态代码块优先于main函数执行
静态
静态main
class StaticDemo{
static{
System.out.println("parent静态代码块");
}
{
System.out.println("parent非静态代码块");
}
StaticDemo(){
System.out.println("parent构造方法");
} public class Test extends StaticDemo{
static{
System.out.println("child静态");
}
{
System.out.println("child非静态");
}
Test(){
System.out.println("child构造方法");
}
public static void main(String[] args){
System.out.println("main");
new Test();
}
} //result
parent静态代码块
child静态
main
parent非静态代码块
parent构造方法
child非静态
child构造方法

总结

  • 本文讲了Java入门第一行代码,如果您还有更好地理解,欢迎沟通
  • 定位:分享 Android&Java知识点,有兴趣可以继续关注

第二节:Java入门第一行代码的更多相关文章

  1. java入门第五步之数据库项目实战【转】

    在真正进入代码编写前些进行一些工具的准备: 1.保证有一个可用的数据库,这里我用sql server 2000为例,2.拥有一个ide,如ecelise或myeclipse等,这里我使用的是myecl ...

  2. 转:java怎么用一行代码初始化ArrayList

    java怎么用一行代码初始化ArrayList 您可以创建一个工厂方法: public static ArrayList<String> createArrayList(String .. ...

  3. Java如何用一行代码初始化ArrayList

    参考链接: 1.Initialization of an ArrayList in one line 2.java怎么用一行代码初始化ArrayList

  4. java入门第三步之数据库连接

    数据库连接可以说是学习web最基础的部分,也是非常重要的一部分,今天我们就来介绍下数据库的连接为下面学习真正的web打下基础 java中连接数据库一般有两种方式: 1.ODBC——Open Datab ...

  5. java入门第三步之数据库连接【转】

    数据库连接可以说是学习web最基础的部分,也是非常重要的一部分,今天我们就来介绍下数据库的连接为下面学习真正的web打下基础 java中连接数据库一般有两种方式: 1.ODBC——Open Datab ...

  6. Java入门第37课——猜字母游戏之设计数据结构

    问题        有猜字母游戏,其游戏规则为:程序随机产生5个按照一定顺序排列的字符作为猜测的结果,由玩家来猜测此字符串.玩家可以猜测多次,每猜测一次,则由系统提示结果.如果猜测的完全正确,则游戏结 ...

  7. Netty学习第二节Java IO通信

    一.Java IO通信 名词解释: BIO通信:       采用BIO通信模型的服务端,通常由一个独立的Acceptor线程负责监听客户端连接,在接收到客户端请求后,为每一个客户端建立一个新的线程负 ...

  8. 第二节 java基本语法

    在讲解之前首先避免不了的就是对一些枯燥的东西的描述,哈哈哈,学习就是这样的咯 1.注释:什么叫注释呢?就是帮助阅读的同学理解代码的说明,而开发工具不会去理会他.java的注释有哪些呢?主要分为3大类: ...

  9. Java入门第38课——猜字母游戏之设计程序结构

    问题        本案例需要实现猜字母游戏程序中的程序结构 方案        分析猜字母游戏可以看出,程序首先需要随机产生5个不同的字母作为需要猜测的结果,因此,可以先定义一个方法,以实现此功能: ...

随机推荐

  1. 安装swoole

    php需要安装swoole扩展 swoole4.3.2 cd /usr/local/src/ wget https://pecl.php.net/get/swoole-4.3.2.tgz tar -z ...

  2. Python之路(第三十一篇) 网络编程:简单的tcp套接字通信、粘包现象

    一.简单的tcp套接字通信 套接字通信的一般流程 服务端 server = socket() #创建服务器套接字 server.bind() #把地址绑定到套接字,网络地址加端口 server.lis ...

  3. 4-2 requests库使用

    打开自己的编辑器 创建一个py文件 这里是首先调用requests库 调用requests  最后打印出response

  4. Python3.7 Scrapy crawl 运行出错解决方法

    安装的是Python3.7,装上依赖包和scrapy后运行爬虫命令出错 File "D:\Python37\lib\site-packages\scrapy\extensions\telne ...

  5. 异常:Caused by: java.sql.SQLException: Field 'cust_id' doesn't have a default value

    异常: 由Java.q.L.SqLExpExt引起:字段“CuSTyID”没有默认值 Caused by: java.sql.SQLException: Field 'cust_id' doesn't ...

  6. XBee 802.15.4/Digimesh FAQs:如何为2.4G模块选择合适的信道

    XBee 802.15.4模块和XBee Digimesh模块在硬件上完全相同,只是出厂带有不同固件,如果测试需要,这两个固件可以都可以互换烧入模块中. 如何为2.4G模块选择合适的信道 IEEE 8 ...

  7. 移动端各种滚动场景需求的插件better-scroll

    移动端各种滚动场景需求的插件: 文档地址: better-scroll:https://ustbhuangyi.github.io/better-scroll/doc/zh-hans/#better- ...

  8. 使用ServletContextListener关闭Redisson连接

     ServletContextListener 监听器 在 Servlet API 中有一个 ServletContextListener 接口,它能够监听 ServletContext 对象的生命周 ...

  9. promise和生成器的结合

    if(Promise.wrap){ Promise.wrap = function(fn){ return function(){ var args = [].slice.call(arguments ...

  10. 学习Acegi应用到实际项目中(11)- 切换用户

    在某些应用场合中,可能需要用到切换用户的功能,从而以另一用户的身份进行相关操作.这一点类似于在Linux系统中,用su命令切换到另一用户进行相关操作. 既然实际应用中有这种场合,那么我们就有必要对其进 ...