DANISH
DANISH
}
}
public class My_class{
public static void main(String args[]){
//Instantiating the outer class
Outer_Demo outer = new Outer_Demo();
Output:
Output:
Code:
public class Outerclass{
Output:
package assignmentinnerclasses;
abstract class vahicle_Owner{
abstract void info();
}
class vahicle{
String Name;
String Enginecc;
String Model;
vahicle(){
System.out.println("THE INFORMATION OF VAHICLE");
}
vahicle(String n,String e,String m){
this.Name=n;
this.Enginecc=e;
this.Model=m;
}
return Model;
}
}
public class Assignmentinnerclasses {
public static void main(String[] args) {
// TODO code application logic here
vahicle_Owner vo=new vahicle_Owner(){
@Override
void info() {
throw new UnsupportedOperationException("Not supported yet."); //To change
body of generated methods, choose Tools | Templates.
}
};
}
2: Pass an anonymous inner class as a method argument.
package assignmentinnerclasses;
import java.util.Scanner;
class vahicle{
String Name;
String Enginecc;
String Model;
vahicle(){
System.out.println("THE INFORMATION OF VAHICLE");
}
vahicle(String n,String e,String m){
this.Name=n;
this.Enginecc=e;
this.Model=m;
}
}
public class Assignmentinnerclasses {
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
vahicle v=new vahicle();
System.out.println("ENTER NAME OF THE OWNER");
String PName = s.nextLine();
System.out.println("ENTER CNIC OF THE OWNER");
String CNIC =s.nextLine();
System.out.println("ENTER PHONE NUMBER OF THE OWNER");
String PHNO =s.nextLine();
v.information(PName, PHNO, CNIC);
}
3: Implement the inner class as static first and then as non static nested class.
package assignmentinnerclasses;
import java.util.Scanner;
class vahicle{
String Name;
String Enginecc;
String Model;
vahicle(){
System.out.println("THE INFORMATION OF VAHICLE");
}
vahicle(String n,String e,String m){
this.Name=n;
this.Enginecc=e;
this.Model=m;
}
}
}
}
public class Assignmentinnerclasses {
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
vahicle v=new vahicle();
vahicle.Owner o=new vahicle.Owner();
o.Display();
}
}
By using non-static nested inner classes
package assignmentinnerclasses;
import java.util.Scanner;
class vahicle{
String Name;
String Enginecc;
String Model;
vahicle(){
System.out.println("THE INFORMATION OF VAHICLE");
}
vahicle(String n,String e,String m){
this.Name=n;
this.Enginecc=e;
this.Model=m;
}
}
}
}
public class Assignmentinnerclasses {
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
vahicle v=new vahicle();
vahicle.Owner o=vahicle.new Owner();
System.out.println("ENTER NAME OF THE OWNER");
String PName = s.nextLine();
System.out.println("ENTER CNIC OF THE OWNER");
String CNIC =s.nextLine();
System.out.println("ENTER PHONE NUMBER OF THE OWNER");
String PHNO =s.nextLine();
o.Display(PName, CNIC, PHNO);
}