CastOverrideAndAnonymusClasses

This commit is contained in:
2024-10-04 20:44:18 +02:00
parent c556d9d901
commit c9e96af0a5
8 changed files with 77 additions and 0 deletions

16
castingandothers/pom.xml Normal file
View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>castingandothers</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
</properties>
</project>

View File

@ -0,0 +1,8 @@
package com.example;
class Animal{
public String name;
public void Animal(){
this.name = "Something!!!";
}
}

View File

@ -0,0 +1,12 @@
package com.example;
public class Cat extends Animal {
public String sound;
public void Cat(){
this.sound = "MEEEEOW";
}
public void makesound(){
this.sound = "Something like MEEEEOW";
System.err.println(sound);
}
}

View File

@ -0,0 +1,41 @@
package com.example;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
System.out.println("Hello world!");
double asd = 3.5423;
int castedasd = (int) asd;
System.out.println(castedasd);
System.out.print("Gimme a letter and Ill tel you the ASCII code! ");
Scanner read = new Scanner(System.in);
char a = read.next().charAt(0);
//your code goes here
System.out.println((int)a);
// Upcasting
// You can cast an instance of a subclass to its superclass.
// Consider the following example, assuming that Cat is a subclass of Animal.
Animal C = new Cat();
Animal B = new Cat();
System.out.println(((Cat)B).sound);
// Anonymous Classes
// Anonymous classes are a way to extend the existing classes on the fly.
// For example, consider having a class Machine:
Cat c = new Cat(){
@Override public void makesound(){
System.err.println("MOOOOOOOOOOOOOO");
}
};
c.makesound();
}
}

Binary file not shown.

Binary file not shown.