Урок 23(продолжение): Форматирование строк в Java 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Урок 23(продолжение): Форматирование строк в Java



// Перевод Строки на следующую строку.

public class Lesson23 {
public static void main(String[] args) {
   // System.out.print - НЕТ перевода Строки на следующую строку.
  
System. out. print ("(System.out.print) Строка 1 ");
   System. out. println ("Строка 2 ");

   // Деление Текста Пустой Строкой.
  
System. out. println ();

   // System.out.prinln - перевод Строки на следующую строку.
  
System. out. println ("(System.out.println) Строка 1 ");
   System. out. println ("Строка 2 ");
}
}

 

 

Вывод в консоль:

 

(System.out.print) Строка 1 Строка 2

 

(System.out.println) Строка 1

Строка 2

 

 

// Форматирование Строки с помощью printf.

public class Lesson23 {
public static void main(String[] args) {
   /*
   Вставка значений в Строку.
   %s или %d - обозначает то место где будет вставлена ВСТАВКА,
   и какой тип будет иметь эта ВСТАВКА.
    */
  
System. out. printf ("This is a string, %s", "NICE");
   System. out. println ();
   System. out. printf ("This is a string, %d", 10);
   System. out. println ();
   System. out. printf ("This is a %s string, %d", "NICE", 10);
   System. out. println ();
   /*
   Форматирование строки.
   Задаем ширину числа в количестве выводимых знаков.
    */
   /*
   "\n" переводит на следующую строку так же,
    как System.out.println ();
    */
  
System. out. printf ("|%10d| \n ", 532); // | - чтобы обозначить ширину         числа в 10 знаков.
  
System. out. printf ("|%-10d| \n ", 532); // теперь цифры прижаты к Левой         стороне
  
System. out. printf ("|%.2f| \n ", 532.0); // вещественное число float с         двумя знаками после запятой.
  
System. out. printf ("|%.2f| \n ", 532.005555555); // и округляет до         второго знака после запятой.
}
}

 

 

Вывод в консоль:

 

This is a string, NICE

This is a string, 10

This is a NICE string, 10

|  532|

|532  |

|532,00|

|532,01|

 

 

Урок 24: Класс Object и метод toString()

public class Lesson24 {
public static void main(String[] args) {
   /*
   Чтобы понять, как работает toString.
   Создаем и выводим на экран два объекта
   Классов Human и String.
    */
  
String string1 = new String ("Bob, 35");
   System. out. println (" Это string1 - " + string1);

   Human human1 = new Human ("Bob", 35);
   /*
   На экране мы увидим хешкод (Human@4554617c).
   Хешкод - это уникальный номер объекта Human (human1).
    */
  
System. out. println (" Это human1 - " + human1);
   // ИЛИ
  
System. out. println (" Это human1 - " + human1.toString ());
}
}

class Human{
private String name;
private int age;

public Human(String name, int age){
   this. name = name;
   this. age = age;
}
}

 

 

Вывод в консоль:

 

Это string1 - Bob, 35

Это human1 - Human@4554617c

Это human1 - Human@4554617c

 

 

Переопределение метода toString ().

 

public class Lesson24 {
public static void main(String[] args) {
   Human human1 = new Human ("Bob", 35);
   /*
   Чтобы метод toString () выводил на экран данные Объекта human1,
   а не его хешкод
   (toString () хешкод выводит по умолчанию),
   метод toString (), доставшийся классу Human от Object
   нужно переопределить в классе Human.
   */
  
System. out. println (" Это human1 - " + human1);
   // ИЛИ
  
System. out. println (" Это human1 - " + human1.toString ());
}
}

class Human{
private String name;
private int age;

public Human(String name, int age){
   this. name = name;
   this. age = age;
}
/*
Переопределение метода toString ()
*/
public String toString(){
   return name + ", " + age;
}
}

 

Вывод в консоль:

 

Это human1 - Bob, 35

Это human1 - Bob, 35

 

 

Урок 25: Наследование.

public class Lesson25 {
public static void main(String[] args) {
   Animal animal = new Animal ();
   System. out. print ("animal: ");
   animal.eat ();
   System. out. print ("animal: ");
   animal.sleep ();

   System. out. println ();

   /*
   Класс Dog наследует от класса Animal
   методы eat и sleep
    */
  
Dog dog = new Dog ();
   System. out. print ("dog: ");
   dog.eat ();
   System. out. print ("dog: ");
   dog.sleep ();
}
}

 

 

public class Animal {
public void eat(){
   System. out. println ("I am eating");
}

public void sleep(){
   System. out. println ("I am sleeping");
}
}

 

 

// Dog extends Animal
// Dog наследует 2 метода от Animal

public class Dog extends Animal {
}

 

 

Вывод в консоль:

 

animal: I am eating

animal: I am sleeping

 

dog: I am eating

dog: I am sleeping

 

 

Дополняем класс Dog методом bark (лаять).

Этот метод не сможет использовать объект класса Animal,только объекты класса Dog и классы наследники класса Dog.

 

public class Lesson25 {
public static void main(String[] args) {
   Animal animal = new Animal ();
   System. out. print ("animal: ");
   animal.eat ();
   System. out. print ("animal: ");
   animal.sleep ();

   System. out. println ();

   /*
   Класс Dog наследует от класса Animal
   методы eat и sleep
    */
  
Dog dog = new Dog ();
   System. out. print ("dog: ");
   dog.eat ();
   System. out. print ("dog: ");
   dog.sleep ();
   /*
   Новый метод класса Dog - bark.
    */
  
System. out. print ("dog: ");
   dog.bark ();
}
}

 

 

public class Animal {
public void eat(){
   System. out. println ("I am eating");
}

public void sleep(){
   System. out. println ("I am sleeping");
}
}

 

 

/*
Dog extends Animal
Dog наследует методы от Animal
Дополняем класс Dog методом bark (лаять).
Этот метод не сможет использовать объект класса Animal, только объекты класса Dog и классы наследники класса Dog.
*/

public class Dog extends Animal {
public void bark() {
   System. out. println ("I am barking");
}
}

 

 

Вывод в консоль:

 

animal: I am eating

animal: I am sleeping

 

dog: I am eating

dog: I am sleeping

dog: I am barking

 

 

В классе Dog переопределяем метод eat класса Animal.

 

public class Lesson25 {
public static void main(String[] args) {
   Animal animal = new Animal ();
   System. out. print ("animal: ");
   animal.eat ();
   System. out. print ("animal: ");
   animal.sleep ();

   System. out. println ();

   /*
   Класс Dog наследует от класса Animal
   методы eat и sleep
    */
  
Dog dog = new Dog ();
   System. out. print ("dog: ");
   dog.eat ();
   System. out. print ("dog: ");
   dog.sleep ();
   /*
   Новый метод класса Dog - bark.
    */
  
System. out. print ("dog: ");
   dog.bark ();
}
}

 

 

public class Animal {
public void eat(){
   System. out. println ("Animal is eating");
}

public void sleep(){
   System. out. println ("Animal is sleeping");
}
}

 

 

/*
Dog extends Animal
Dog наследует методы от Animal
Дополняем класс Dog методом bark (лаять).
Этот метод не сможет использовать объект класса Animal,только объекты класса Dog и классы наследники класса Dog.
В классе Dog переопределяем метод eat класса Animal
*/

public class Dog extends Animal {
public void bark() {
   System. out. println ("I am barking");
}
/*
Если сигнатура метода eat в классе Dog,
совпадает с сигнатурой метода eat класса Animal,
то метод eat класса Animal становится НЕАКТУАЛЬНЫМ для объекта класса Dog!!!
*/
public void eat(){
   System. out. println ("Dog is eating");
}
}

 

 

Вывод в консоль:

 

 

animal: Animal is eating

animal: Animal is sleeping

 

dog: Dog is eating

dog: Animal is sleeping

dog: I am barking

 

 

Добавляем в класс Animal новое поле name.

 

public class Lesson25 {
public static void main(String[] args) {
   Animal animal = new Animal ();
   System. out. print ("animal: ");
   animal.eat ();
   System. out. print ("animal: ");
   animal.sleep ();

   System. out. println ();

   /*
   Класс Dog наследует от класса Animal
   методы eat и sleep
    */
  
Dog dog = new Dog ();
   System. out. print ("dog: ");
   dog.eat ();
   System. out. print ("dog: ");
   dog.sleep ();
   /*
   Новый метод класса Dog - bark.
    */
  
System. out. print ("dog: ");
   dog.bark ();

   System. out. print ("dog: ");
   dog.showName ();
}
}

 

 

// Создаем поле String name; в классе Animal
public class Animal {

String name = "Some animal";

public void eat(){
   System. out. println ("Animal is eating");
}

public void sleep(){
   System. out. println ("Animal is sleeping");
}
}

 

 

// Создаем поле метод showName(); в классе Dog

public class Dog extends Animal {
public void bark() {
   System. out. println ("I am barking");
}
/*
Если сигнатура метода eat в классе Dog,
совпадает с сигнатурой метода eat класса Animal,
то метод eat класса Animal становится НЕАКТУАЛЬНЫМ для объекта класса Dog!!!
*/
public void eat(){
   System. out. println ("Dog is eating");
}

/*
В классе Dog нет поля String name;
Оно наследуется из класса - Родителя Animal, ЕСЛИ оно не!!!private!!!
*/

public void showName(){
   System. out. println (name);
}
}

 

 

Вывод в консоль:

 

animal: Animal is eating

animal: Animal is sleeping

 

dog: Dog is eating

dog: Animal is sleeping

dog: I am barking

dog: Some animal

 

 

Урок 26: Интерфейсы.

Чтобы использовать в одном проекте классы с одинаковыми именами, нужно разнести их по разным папкам (Pascage) в папке src.

 

Создаем новый пакет (папку) Interfaces. Для создания в IJ Constructor, Setter или Getter, зажимаем клавиши Ctrl + N.

 

package Interfaces;

public class Test {
public static void main(String[] args) {
   Animal animal1 = new Animal (1);
   Person person1 = new Person ("Bob");

   animal1.sleep ();
   person1.sayHello ();
}
}

 

 

package Interfaces;

public class Animal {
public int id;

public Animal(int id){
   this. id = id;
}

public void sleep(){
   System. out. println ("I am sleeping");
}
}

 

 

package Interfaces;

public class Person {
public String name;

public Person(String name){
   this. name = name;
}

public void sayHello(){
   System. out. println ("Hello");
}
}

 

 

Вывод в консоль:

 

I am sleeping

Hello

 

 

Создаем Interfaces для классов Animal и Person. Interfaces -> Animal -> New -> Java ClassName: InfoKind: Interface package Interfaces;

public class Test {
public static void main(String[] args) {
   Animal animal1 = new Animal (1);
   Person person1 = new Person ("Bob");

   animal1.sleep ();
   person1.sayHello ();

   animal1.showInfo ();
   person1.showInfo ();
}
} package Interfaces;

public interface Info {
public void showInfo();
}

 

package Interfaces;

public class Animal implements Info{
public int id;

public Animal(int id){
   this. id = id;
}

public void sleep(){
   System. out. println ("I am sleeping");
}

public void showInfo(){
   System. out. println ("showInfo(); - Id is " + this. id);
}
}

 

 

package Interfaces;

public class Person implements Info{
public String name;

public Person(String name){
   this. name = name;
}

public void sayHello(){
   System. out. println ("Hello");
}

@Override
public void showInfo() {
   System. out. println ("showInfo(); - Name is " + this. name);
}
}

 

 

Вывод в консоль:

 

I am sleeping

Hello

showInfo(); - Id is 1

showInfo(); - Name is Bob

 

 

package Interfaces;

public class Test {
public static void main(String[] args) {
   /*
   Если классы Animal и Person реализую один интерфейс Info,
   то возможна такая реализация.
    */
 
Info info1 = new Animal (1);
  Info info2 = new Person ("Bob");

  info1.showInfo ();
  info2.showInfo ();
  /*
  info1 и info2 не имеют доступа к методам классов Animal и Person
 !!! неправильно - info1.sleep ();
 !!! неправильно - info2.sayHello ();
   */
}
}

 

 

package Interfaces;

public interface Info {
public void showInfo();
}

 

 

package Interfaces;

public class Animal implements Info{
public int id;

public Animal(int id){
   this. id = id;
}

public void sleep(){
   System. out. println ("I am sleeping");
}

public void showInfo(){
   System. out. println ("showInfo(); - Id is " + this. id);
}
}

 

 

package Interfaces;

public class Person implements Info{
public String name;

public Person(String name){
   this. name = name;
}

public void sayHello(){
   System. out. println ("Hello");
}

@Override
public void showInfo() {
   System. out. println ("showInfo(); - Name is " + this. name);
}
}

 

 

Вывод в консоль:

 

showInfo(); - Id is 1

showInfo(); - Name is Bob

 

 

package Interfaces;

public class Test {
public static void main(String[] args) {
   /*
   Если классы Animal и Person реализую один интерфейс Info,
   то возможна такая реализация.
    */
 
Info info1 = new Animal (1);
  Info info2 = new Person ("Bob");

  /*
  Заменяем
  info1.showInfo ();
  info2.showInfo ();
  на...
   */

  outputInfo (info1);
  outputInfo (info2);

}
public static void outputInfo(Info info){
   info.showInfo ();
}
}

 

 

package Interfaces;

public interface Info {
public void showInfo();
}

 

 

package Interfaces;

public class Animal implements Info{
public int id;

public Animal(int id){
   this. id = id;
}

public void sleep(){
   System. out. println ("I am sleeping");
}

public void showInfo(){
   System. out. println ("showInfo(); - Id is " + this. id);
}
}

 

 

package Interfaces;

public class Person implements Info{
public String name;

public Person(String name){
   this. name = name;
}

public void sayHello(){
   System. out. println ("Hello");
}

@Override
public void showInfo() {
   System. out. println ("showInfo(); - Name is " + this. name);
}
}

 

 

Вывод в консоль:

 

showInfo(); - Id is 1

showInfo(); - Name is Bob

 

 

package Interfaces;

public class Test {
public static void main(String[] args) {
  /*
  Заменяем
  Info info1 = new Animal (1);
  Info info2 = new Person ("Bob");
  на...
   */
 
Animal animal1 = new Animal (1);
  Person person1 = new Person ("Bob");
  outputInfo (animal1);
  outputInfo (person1);

}
public static void outputInfo(Info info){
   info.showInfo ();
}
}

 

 

package Interfaces;

public interface Info {
public void showInfo();
}

 

 

package Interfaces;

public class Animal implements Info{
public int id;

public Animal(int id){
   this. id = id;
}

public void sleep(){
   System. out. println ("I am sleeping");
}

public void showInfo(){
   System. out. println ("showInfo(); - Id is " + this. id);
}
}

 

 

package Interfaces;

public class Person implements Info{
public String name;

public Person(String name){
   this. name = name;
}

public void sayHello(){
   System. out. println ("Hello");
}

@Override
public void showInfo() {
   System. out. println ("showInfo(); - Name is " + this. name);
}
}

 

 

Вывод в консоль:

 

showInfo(); - Id is 1

showInfo(); - Name is Bob

Урок 27: Пакеты.

Создаем:

- класс Test;- пакет Forest;               - класс Squirell;               - класс Tree;

 

 

Организация нашего проекта в папке src на компьютере.

 

 

В папке Forest.

 

 

Создаем Объект класса Tree в классе Test.

 

public class Test {
public static void main(String[] args) {
   Tree tree1 = new Tree ();
}
}

 

!!!Компилятор выдает ошибку о том, что он не видит класс Tree!!!

Импортируем в класс Test класс Tree пакета Forest.

 

import Forest.Tree;

public class Test {
public static void main(String[] args) {
   Tree tree1 = new Tree ();
}
}

 

Ошибка компиляции исчезла.

 

import Forest.Tree;

import Forest.Squirell;

public class Test {
public static void main(String[] args) {
   Tree tree1 = new Tree ();
   Squirell squirell1 = new Squirell ();
}
}

 

 

Класс Scanner находится тоже в другом пакете, который тоже нужно импортировать.

 

import java.util.Scanner;

public class Test {
public static void main(String[] args) {
   Scanner scanner = new Scanner (System. in);
}
}Создаем еще один пакет SomeThing и класс SomeClass в пакете Forest.

 

 

 

Создаем Объект класса SomeClass в классе Test.

Импортируем в класс Test класс SomeClass пакета SomeThing пакета Forest.

 

import Forest.SomeThing.SomeClass;

public class Test {
public static void main(String[] args) {
   SomeClass someClass1 = new SomeClass ();
}
}

 

 

 

 

 

Сокращенный импорт классов.

Из...

 

 

В...



Поделиться:


Последнее изменение этой страницы: 2020-12-17; просмотров: 124; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.217.8.82 (0.145 с.)