java基础1

import java.io.*

这行代码是 Java 中的一个导入语句,用于导入 `java.io` 包中的所有类和接口,以便在当前源文件中可以直接使用该包中的类和接口,而不需要在每次使用时都写全限定名。

`java.io` 包是 Java 核心类库中用于处理输入输出操作的包,包括了文件读写、网络通信等功能。例如,`FileInputStream`、`FileOutputStream`、`BufferedReader`、`PrintWriter` 等都是在 `java.io` 包中定义的类。还有system.out。

导入语句的作用是简化代码,使得可以直接使用包中的类名而不需要每次都写全限定名,提高了代码的可读性和可维护性。

class为关键字,定义一个类

`public` 是 Java 中的一个访问修饰符,它可以用来修饰类、方法、变量等。

1. **对类的修饰:
   -当一个类被声明为 `public` 时,它可以被任何其他类访问,无论这个类是否在同一个包中。
   -一个 Java 文件中最多只能有一个 `public` 类,且文件名必须与 `public` 类的类名相同。


public class MyClass {
    // 类的成员和方法
}

2. **对方法的修饰:
   - 当一个方法被声明为 `public` 时,它可以被任何类调用,无论这个类是否在同一个包中。
public void myMethod() {
    // 方法的实现
}

3. **对变量的修饰:
   - 当一个变量被声明为 `public` 时,它可以被任何类访问,无论这个类是否在同一个包中。
public int myVariable = 10;

4. **对接口的修饰:
   - 当一个接口被声明为 `public` 时,它可以被其他类实现或者继承。
public interface MyInterface {
    // 接口的成员和方法
}

5. **对包的修饰:
   - 在 Java 源文件的开头可以使用 `package` 声明来定义包,但不能使用 `public` 修饰包。
package com.example.mypackage;

import java.applet.*

总的来说,`public` 是一种最广泛访问权限的修饰符,它允许在程序中的任何地方访问被修饰的类、方法、变量或接口。

这行代码是 Java 中的一个导入语句,用于导入 `java.applet` 包中的所有类和接口,以便在当前源文件中可以直接使用该包中的类和接口,而不需要在每次使用时都写全限定名。

`java.applet` 包提供了用于创建小型 Java 应用程序(称为小程序或小程序)的类和接口。小程序是可以在 Web 浏览器中运行的 Java 应用程序,通常用于创建交互式的网页内容。

例如,`Applet` 类就是在 `java.applet` 包中定义的,它是用于创建小程序的基类。

导入语句的作用是简化代码,使得可以直接使用包中的类名而不需要每次都写全限定名,提高了代码的可读性和可维护性。

package cn.itcast_01;
import java.awt.*;
import java.applet.Applet;

public class HelloWorldApplet extends Applet {
    public void paint(Graphics g)
            //(Graphics g): 这是方法的参数列表,它接受一个名为 g 的 Graphics 对象作为参数。Graphics 对象提供了一系列用于绘制图形的方法。
            //在 paint 方法中,你可以使用 Graphics 对象的方法来进行绘制操作,例如绘制线条、填充形状、绘制文本等。
    {
        g.drawString("HelloWorld!",10,50);
    }
    //g: 这是一个 Graphics 对象,它提供了用于绘制图形的方法。
    //drawString: 这是 Graphics 对象的一个方法,用于在指定位置绘制文本。
}

JOptionPane.showInputDialog 是 Java Swing 中的一个方法,用于显示一个对话框,让用户输入文本。

具体来说,它允许你在图形用户界面中显示一个简单的输入对话框,用户可以在其中输入文本,并且可以使用这些输入来进行后续的处理。

import javax.swing.JOptionPane;

public class InputDialogExample {
    public static void main(String[] args) {
        String input = JOptionPane.showInputDialog("Please enter your name:");
        if (input != null) {
            System.out.println("Hello, " + input + "!");
        } else {
            System.out.println("No input provided.");
        }
    }
}

在上面的示例中,JOptionPane.showInputDialog 方法会显示一个对话框,提示用户输入他们的名字。用户输入的文本会被返回给程序,然后可以进行后续的处理。

需要注意的是,如果用户点击了对话框的取消按钮或关闭按钮,showInputDialog 方法会返回 null,因此在使用返回值之前需要进行空值检查。

这个方法通常用于在图形用户界面中获取用户输入,例如获取用户名、密码、数字等信息。

Java 程序可以被分为两大类:

1. **独立应用程序(Standalone Applications):**
   - 独立应用程序是独立运行的程序,可以在本地计算机上直接运行,而无需依赖于 Web 浏览器或其他应用程序。
   - 独立应用程序一般通过 `main` 方法启动执行,它们可以在命令行或集成开发环境(IDE)中运行。
   - 独立应用程序的典型示例包括传统的桌面应用程序、控制台程序等。

2. **Web 应用程序(Web Applications):**
   - Web 应用程序是在 Web 服务器上运行的程序,它们通过 Web 浏览器提供服务给用户。
   - Web 应用程序通常使用 Java Enterprise Edition(Java EE)技术开发,它们包括了 Servlet、JSP、EJB 等组件。
   - Web 应用程序的特点是可以通过 URL 访问,提供了动态内容和交互性,常用于构建网站、Web 应用等。

这两类程序的主要区别在于运行环境和交互方式:

- **独立应用程序**是在本地计算机上运行的,用户可以直接启动它们并在本地环境中使用。它们通常用于执行一些本地任务,如桌面应用程序、工具等。

- **Web 应用程序**则是部署在 Web 服务器上,用户通过 Web 浏览器访问它们。Web 应用程序提供了动态交互和多用户访问的能力,通常用于构建网站、在线服务等。

需要指出的是,这两类程序可以相互配合,例如一个 Web 应用程序可以调用独立应用程序的功能,或者独立应用程序可以使用 Web 服务来实现特定功能。

总的来说,Java 提供了灵活的开发环境,可以用于构建各种类型的应用程序,从独立的桌面工具到复杂的 Web 应用程序都可以涵盖。

Java语言主要特点

1、跨平台/可移植

大家都知道.java文件在编译后会变为.class文件,而.class文件并不是二进制文件,计算机是无法直接识别的,其次不同的操作系统之间也是有差异的,所以jvm就出现了,java程序实际上运行在jvm当中,JVM屏蔽了操作系统之间的差异。

在不同的操作系统中必须安装不同版本的JVM。这也就达到了一次编译,到处运行。
但是为了达到可移植,必须提前在操作系统中安装JRE,JRE有了之后才会有JVM。【JVM不能单独安装】这方面体验不是特别好

2. 面向对象

面向对象是指以对象为基本粒度,其下包含属性和方法。对象的说明用属性表达,而通过使用方法来操作这个对象。面向对象技术使得应用程序的开发变得简单易用,节省代码。Java是一种面向对象的语言,也继承了面向对象的诸多好处,如代码扩展、代码复用等。

3. 安全性
Java通常被用在网络环境中,为此,Java提供了一个安全机制以防止恶意代码的攻击,Java还对通过网络下载的类增加一个安全防范机制,分配不同的名字空间以防替代本地的同名类,并包含安全管理机制。

4. 多线程
多线程在操作系统中已得到了最成功的应用。多线程是指允许一个应用程序同时存在两个或两个以上的线程,用于支持事务并发和多任务处理。 Java除了内置的多线程技术之外,还定义了一些类、方法等来建立和管理用户定义的多线程。

5. 简单易用

这里的简单说的是相对于C语言来说的。
例如:C语言当中有指针,C++中多继承
ava取消了指针的概念,取消了多继承,只支持单继承

Java语言四大特性

1、多态

消除类型之间的耦合关系,多个类继承一个父类,然后并重写父类当中的方法,并且各自方法的实现内容都不一样,这个时候我们可以称之为多态。
多态跟继承有很大关系,多态存在的三个必要条件:
1、要有继承; 二、要有重写; 三、父类引用指向子类对象

2、继承

1、能够继承父类的public和protected成员变量、方法;不能够继承父类的private成员变量;
2、对于父类的包访问权限成员变量、方法,如果子类和父类在同一个包下,则子类能够继承;否则,子类不能够继承;
3、对于子类可以继承的父类成员变量、方法,如果在子类中出现了同名称的成员变量,则会发生隐藏现象,即子类的成员变量会屏蔽掉父类的同名成员变量。如果要在子类中访问父类中同名成员变量,需要使用super关键字来进行引用。
4、无论什么时候都先执行构造器,初始化顺序,父类的构造器调用以及初始化过程一定在子类的前面
5、成员变量也会出现隐藏,当子类继承父类,两个同时都有一个变量并且都赋了值,输出会发现输出的是父类的。
6、如果是普通方法的时候,子类和父类都有这个方法,那就会输出子类的。
7、如果是静态方法的时候,子类和父类都有这个方法,那就会输出父类的。

3、抽象

抽象方法是一种特殊的方法,他本身就是为继承而存在的,它只有声明,而没有具体的实现。接口当中就全部都是抽象类,如果一个类含有抽象方法,则称这个类为抽象类。接口当中也都是抽象方法,我们可以把接口来形容成抽象中的抽象,实现抽象类,可以不实现该接口中的抽象方法。如果实现某个接口,就必须实现他的所有方法。

4、封装

此处不做过多解释,简单理解,就比如每个对象当中都有get,set方法,然后对外使用,就是我们直接可以调用方法来进行,内部对这个对象进行赋值取值。这也可以认为是封装。
Java的加载与执行

Java开发的整个生命周期,包括两个重要的阶段,分别是:编译阶段和运行阶段

java整体加载执行的步骤:
.java -> .class ->类装载器 ->Java 虚拟机(JVM)->操作系统->硬件平台

.java -> .class 的过程称为编译阶段
.java文件在编译后会变为.class文件,在编译过程,会进行java语法校验,如果语法有误是没办法编译成功的。

类装载器 ->Java 虚拟机(JVM)->操作系统->硬件平台 称为运行阶段
类装载器主要是负责帮我们去硬盘寻找.class文件
jvm帮我们解析成二进制文件然后操作系统根据二进制执行,去和硬件平台进行交互

java跨平台是如何实现的

Java 跨平台性是通过以下机制实现的:

1. **字节码(Bytecode):** Java 源代码在编译时不会直接编译成特定平台的机器码,而是被编译成称为字节码的中间码。字节码是一种与平台无关的二进制格式,可以在任何支持 Java 的平台上运行。

2. **Java 虚拟机(JVM):** Java 虚拟机是一个在特定平台上运行的软件程序,它负责将字节码翻译成特定平台的机器码。每个平台都有自己的 JVM 实现,因此可以在不同的操作系统和硬件上运行。

3. **Java 核心类库:** Java 提供了一个丰富的核心类库,其中包括了许多常用的类和接口,用于处理输入输出、网络通信、图形界面等任务。这些类库的实现是与平台无关的,因此可以在所有支持 Java 的平台上使用。

4. **安全性控制:** Java 的安全性模型对运行 Java 程序的环境进行了限制,例如不允许程序直接访问底层硬件或操作系统资源。这种控制保证了 Java 程序在不同平台上的安全运行。

5. **标准化:** Java 技术由 Java Community Process(JCP)标准化,确保了 Java 平台的一致性和互操作性。

总的来说,Java 跨平台性是通过将 Java 程序编译成与平台无关的字节码,然后在特定平台上运行一个相应的 Java 虚拟机来实现的。这使得开发者可以编写一次代码,然后在支持 Java 的任何平台上运行,极大地提高了代码的可移植性。

`Application` 和 `Applet` 是两种不同类型的 Java 程序,它们在运行环境和用途上有一些明显的区别。

application和applet程序有什么区别

**Application(独立应用程序):**

1. **运行环境:**
   - `Application` 是独立运行的 Java 程序,它们可以在本地计算机上直接运行,而无需依赖于 Web 浏览器或其他应用程序。

2. **启动方式:**
   - `Application` 通常通过 `main` 方法来启动执行,它们可以在命令行或集成开发环境(IDE)中运行。

3. **用户界面:**
   - `Application` 可以提供各种类型的用户界面,包括图形用户界面(GUI)和控制台界面。

4. **访问权限:**
   - `Application` 具有对本地文件系统、网络资源等广泛的访问权限。

5. **例子:**
   - 传统的桌面应用程序、工具等通常是独立应用程序的例子。

**Applet(小程序):**

1. **运行环境:**
   - `Applet` 是在 Web 浏览器中运行的 Java 程序,它们通过 Java 插件在 Web 页面中嵌入并在浏览器中执行。

2. **启动方式:**
   - `Applet` 通常被嵌入到 HTML 页面中,并由 Web 浏览器自动加载和运行。

3. **用户界面:**
   - `Applet` 通常通过图形用户界面(GUI)来与用户交互,它们在 Web 页面中显示,用户可以通过浏览器进行操作。

4. **访问权限:**
   - `Applet` 受到浏览器的安全限制,通常只能访问来自其加载的主机的资源,不能直接访问本地文件系统等。

5. **例子:**
   - 交互式网页、在线游戏等通常是 `Applet` 的例子。

总的来说,`Application` 是独立运行的 Java 程序,可以在本地计算机上直接运行,而 `Applet` 是在 Web 浏览器中运行的 Java 程序,通过插件嵌入到 Web 页面中执行。它们的运行环境、用户界面、访问权限等方面有着显著的区别。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值