(因为我粗略学过C,C++,Python,了解过他们的一些语法,所以为了使得java的入门更为顺畅,便会忽略一些和C语法相类似的地方,着重点明一些java自己的特色之处。也减轻一下自己写文字的负担。)

JAVA是一门静态的强类型的面向对象的重量级的编程语言。

一般写JAVA程序需要的组件是JDK,到甲骨文的网站上下载即可。

初级阶段使用文本编辑器即可,当然,我正处在这个阶段。

此时用来编译运行JAVA文件常用的两条命令是

javac -encoding utf-8 filename.java
java filename

以上命令就是先使用javac在java文件当前目录下,编译生成字节码文件filename.class,之后再用java解释执行成特定平台的机器码,输出。

这里指定了编码格式,因为java默认文件为unicode编码,但是文件中有中文,会有错误提示。

错误:编码GBK的不可映射字符

若是你没有这个问题,则可以忽略那个-encoding utf-8


java源文件的命名

和c,c++,python不同,java要求,源文件后缀名为.java,文件名字一般要求和文件中的 public class 同名,若是没有定义,那就没有限制了。这也可以看出,一个java源文件中只能最多有一个 public class。通常建议一个java源文件只定义一个类,让java的源文件主文件名与该源文件中定义的 public class同名。

java程序的结构

java程序必须以类的形式存在,类是java程序的最小单位,java不允许除类外的可执行语句,方法等成分独立存在。他们必须放在类定义里。

例子:

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

观察上例,与文件同名的 public class HelloWorld,内部包含一个main()方法,使用System.out.println("Hello World");实现对于文本的输出,类似的有个System.out.print("Hello World");,差别就在于前者会换行。

目前用到的main()函数都是这样写的,关于详细内容之后的文章会介绍。

若是存在多个类怎么办?

可见下例:

class Dog{
public void jump(){
System.out.println("正在执行jump方法");
}
public void run(){
this.jump();
System.out.println("正在执行run方法");
}
} public class DogTest{
public static void main(String[] args){
Dog dog = new Dog();
dog.run();
}
}

因为只允许有一个public class,故而其他的就是普通的类的形式。

java中的流程控制语句

if (...){
...
}
else if{
...
}
else{
...
} switch (...){
case ...:{
...
break;
}
...
default:{
...
}
} while (...){
...
} do{
...
}while (...); for (...; ...; ...){
...
}

Java中出现了一种迭代式的for的用法。python和C++都有类似的语法结构。

for ( type variableName : array | collection){
// variableName 自动迭代访问每个元素
}

例如:

public class ForEachTest
{
public static void main(String[] args)
{
String[] books = {"轻量级",
"fengkuang",
"jiangyi"};
// 使用foreach迭代遍历。
for(String book : books)
{
System.out.println(book);
}
}
}

我的java学习之旅--一些基础的更多相关文章

  1. Java学习之旅开篇:运行机制及环境搭建

    在写这篇博客之前,我想对自己进行简单概括:我从事软件开发工作已经三年多了,并且一直在从事.NET相关项目的开发.为什么突然间想学习Java呢?有以下几个原因: 1. 开发程序三年多来,已经对.NET相 ...

  2. Java学习笔记:语言基础

    Java学习笔记:语言基础 2014-1-31   最近开始学习Java,目的倒不在于想深入的掌握Java开发,而是想了解Java的基本语法,可以阅读Java源代码,从而拓展一些知识面.同时为学习An ...

  3. 2019/3/7 Java学习之多线程(基础)

    Java学习之多线程 讲到线程,就必须要懂得进程,进程是相当于一个程序的开始到结束,而线程是依赖于进程的,没有进程,就没有线程.线程也分主线程和子线程,当在主线程开启子线程时,主线程结束,而子线程还可 ...

  4. Java学习之旅基础知识篇:面向对象之封装、继承及多态

    Java是一种面向对象设计的高级语言,支持继承.封装和多态三大基本特征,首先我们从面向对象两大概念:类和对象(也称为实例)谈起.来看看最基本的类定义语法: /*命名规则: *类名(首字母大写,多个单词 ...

  5. Java学习之旅基础知识篇:数据类型及流程控制

    经过开篇对Java运行机制及相关环境搭建,本篇主要讨论Java程序开发的基础知识点,我简单的梳理一下.在讲解数据类型之前,我顺便提及一下Java注释:单行注释.多行注释以及文档注释,这里重点强调文档注 ...

  6. Java学习之旅基础知识篇:数组及引用类型内存分配

    在上一篇中,我们已经了解了数组,它是一种引用类型,本篇将详细介绍数组的内存分配等知识点.数组用来存储同一种数据类型的数据,一旦初始化完成,即所占的空间就已固定下来,即使某个元素被清空,但其所在空间仍然 ...

  7. java学习之路--简单基础的面试题

    1.面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注 ...

  8. java学习(一)--- 基础语法

    学习内容来 自菜鸟教程 http://www.runoob.com/java/java-object-classes.html   Java基础 Java:一个Java程序可以认为是一系列的对象组合, ...

  9. java 学习第一篇简单基础

    Java基础 Java Java 和C#有着极为相似的语法. 和C#都是面向对象的高级程序语言. JAVA是一个开源,公开的语言,有着极其丰富的开源库和其他资源. JAVA分类 JAVA分SE EE ...

随机推荐

  1. Delphi2009之TImage

    TPngImage原来是SourceFroge上的一个开源项目,现在突然消失了,为什么呢?Nick 在他的博客上写到:TPNGImage被CodeGear/Embarcadero收购了,现在直接就是D ...

  2. Java的Finalizer引发的内存溢出

    本文介绍的是Java里一个内建的概念,Finalizer.你可能对它对数家珍,但也可能从未听闻过,这得看你有没有花时间完整地看过一遍java.lang.Object类了.在java.lang.Obje ...

  3. cookie.js插件的案例

    cookie.js插件的案例: https://github.com/jaywcjlove/cookie.js/blob/master/README.md    文档  api   在这里即可查看用法 ...

  4. MFC 中CString 格式16进制转int 十进制

    代码:CString  v_hex ; int v_dec; v_dec = wcstol(v_hex, NULL, 16);

  5. [UE4]Retainer Box

    把子元素的内容渲染到一个Render Target上去,然后放把它放置到到屏幕上去. Retainer Box的作用: 1.控制UI更新频率 2.把渲染后的UI当成Texture,放入材质中,加工后, ...

  6. 读写txt

    FileStream fileStr = new FileStream("shaftCofig.txt", FileMode.OpenOrCreate); StreamReader ...

  7. VS2012 C# 连接MySQL数据库

    原则:不安装 1.下载: https://dev.mysql.com/downloads/connector/net/6.8.html#downloads 2.解压 → 3.添加引用(一个MySql. ...

  8. android 开发 View _5_ Paint详解

    转载:http://blog.csdn.net/abcdef314159 //Paint的setStyle,Style共有3种 setStyle(Style style) Paint.Style.FI ...

  9. selenium:chromedriver与chrome版本对应关系

    1.chromedriver下载地址:http://npm.taobao.org/mirrors/chromedriver 2.谷歌浏览器与chromedriver的版本对应关系,供参考: Chrom ...

  10. Calendar打印日历

    package com.example.demo; import org.junit.Test; import org.junit.runner.RunWith; import org.springf ...