Compare commits

..

61 Commits

Author SHA1 Message Date
idkWhatUserNameToUse
73c713708f Merge branch 'ІО-22/20-Папко-Максим' of https://github.com/ASDjonok/OOP_IO-2x_2023 into ІО-22/20-Папко-Максим 2023-05-12 11:26:17 +03:00
idkWhatUserNameToUse
02f123888c fixed and modified lab3 2023-05-12 11:25:38 +03:00
Maxim Papko
a954fc5f52 Delete Program.cs 2023-05-04 16:29:07 +03:00
idkWhatUserNameToUse
dcf2b89997 modified text message 2023-05-04 16:28:09 +03:00
Maxim Papko
e20f774ceb Delete Lab3.csproj 2023-05-04 15:49:35 +03:00
Maxim Papko
9ec0b06627 Add files via upload 2023-05-04 15:49:25 +03:00
Maxim Papko
64b8735333 Delete Program.cs 2023-05-04 15:48:37 +03:00
Maxim Papko
983828b777 Delete .idea directory 2023-05-04 15:48:24 +03:00
Maxim Papko
124f67b760 Add files via upload 2023-05-04 15:47:45 +03:00
Maxim Papko
8d906fd812 Delete Program.cs 2023-05-04 15:47:12 +03:00
Maxim Papko
e6a726c647 Add files via upload 2023-05-04 15:46:13 +03:00
idkWhatUserNameToUse
4be9e7b1ba Merge branch 'ІО-22/20-Папко-Максим' of https://github.com/ASDjonok/OOP_IO-2x_2023 into ІО-22/20-Папко-Максим 2023-04-14 20:08:03 +03:00
idkWhatUserNameToUse
d1e20c015c Revert "reviwed and fixed lab1"
This reverts commit c95a243c84.
2023-04-14 20:07:51 +03:00
Maxim Papko
ad7b0175ba Delete laboratorna1 directory 2023-04-14 11:40:50 +03:00
Maxim Papko
c62613c975 Delete lab1_with_extracted_method directory 2023-04-14 11:15:23 +03:00
idkWhatUserNameToUse
c95a243c84 reviwed and fixed lab1 2023-04-14 11:04:57 +03:00
Maxim Papko
63b1b6f62b Delete lab1_with_extracted_method.sln 2023-04-14 09:43:55 +03:00
Maxim Papko
1c68762d9d Delete lab1_with_extracted_method/obj directory 2023-04-14 09:43:45 +03:00
Maxim Papko
ba82b49508 Delete lab1_with_extracted_method.csproj 2023-04-14 09:43:29 +03:00
Maxim Papko
ee35a832b9 Delete lab1_with_extracted_method/.vs directory 2023-04-14 09:43:06 +03:00
Maxim Papko
7e652a976c Delete .vs directory 2023-03-31 21:17:36 +03:00
Maxim Papko
15685384a7 Delete Lab2.sln 2023-03-31 21:16:49 +03:00
Maxim Papko
e6620839bd Delete Lab2.csproj.user 2023-03-31 21:16:44 +03:00
Maxim Papko
f136101a3b Delete Lab2.csproj 2023-03-31 21:16:38 +03:00
Maxim Papko
59fb75ce32 Delete Lab2/obj directory 2023-03-31 21:16:25 +03:00
Maxim Papko
b9570d75f8 Delete Lab2/bin/Debug/net6.0 directory 2023-03-31 21:16:07 +03:00
Maxim Papko
ae0f85c8d6 Delete Lab2/.vs/Lab2 directory 2023-03-31 21:15:55 +03:00
idkWhatUserNameToUse
96dd638e66 added comment 2023-03-31 21:14:55 +03:00
idkWhatUserNameToUse
61760443a5 added comment 2023-03-31 21:13:42 +03:00
idkWhatUserNameToUse
8b517d136f lab2 with error 2023-03-31 21:10:47 +03:00
idkWhatUserNameToUse
9813f75326 extracted method with adding issue 2023-03-23 21:08:55 +02:00
idkWhatUserNameToUse
8ae3907d24 Merge branch 'ІО-22/20-Папко-Максим' of https://github.com/ASDjonok/OOP_IO-2x_2023 into ІО-22/20-Папко-Максим 2023-03-23 20:55:22 +02:00
idkWhatUserNameToUse
a011fc41cf task completed in main method 2023-03-23 20:55:11 +02:00
Maxim Papko
4454d46284 Delete Lab1 directory 2023-03-23 20:40:46 +02:00
idkWhatUserNameToUse
4d70c6a51e Merge branch 'ІО-22/20-Папко-Максим' of https://github.com/ASDjonok/OOP_IO-2x_2023 into ІО-22/20-Папко-Максим 2023-03-23 20:40:02 +02:00
idkWhatUserNameToUse
8db686fac0 determined task 2023-03-23 20:39:53 +02:00
Maxim Papko
a48fb7d41f Delete Lab1 directory 2023-03-23 20:37:22 +02:00
idkWhatUserNameToUse
09f2114de6 determined task 2023-03-23 20:35:38 +02:00
Maxim Papko
828dedc3b6 Add files via upload 2023-03-23 20:34:26 +02:00
Maxim Papko
41b6eb063c Delete Program.cs 2023-03-23 20:31:07 +02:00
Maxim Papko
bb2c8bd1a0 Add files via upload 2023-03-23 20:30:52 +02:00
idkWhatUserNameToUse
88a618647d a certain option 2023-03-23 20:29:30 +02:00
idkWhatUserNameToUse
f4fccadb7b Merge branch 'ІО-22/20-Папко-Максим' of https://github.com/ASDjonok/OOP_IO-2x_2023 into ІО-22/20-Папко-Максим 2023-03-19 16:53:25 +02:00
idkWhatUserNameToUse
fb4c2404f7 added empty file 2023-03-19 16:53:05 +02:00
Maxim Papko
86940aa666 Delete Program.cs 2023-03-19 14:09:18 +02:00
Maxim Papko
1e368a1324 Add files via upload 2023-03-19 14:06:41 +02:00
Maxim Papko
559b03336e Delete Program.cs 2023-03-19 13:45:51 +02:00
Maxim Papko
0a7521af40 Delete .gitignore 2023-03-19 13:43:14 +02:00
Maxim Papko
0b51a1a491 Delete OOP_IO-2x_2023.iml 2023-03-19 13:43:08 +02:00
Maxim Papko
f54eee595c Add files via upload 2023-03-19 13:42:50 +02:00
Oleksii Aleshchenko
14c58d0cc4 add lab2 2023-03-16 15:58:44 +02:00
Oleksii Aleshchenko
afc13cf9f8 add char example for lab1 2023-03-16 15:21:51 +02:00
Oleksii Aleshchenko
e910ee6e4d add final way of check division by zero for lab1 2023-03-16 15:07:48 +02:00
Oleksii Aleshchenko
6ab6cc17db add break with label (commented in line 34) and return for lab1 2023-03-16 15:00:12 +02:00
Oleksii Aleshchenko
25173d66d1 add flag "wasDivisionByZero" for lab1 2023-03-16 14:47:04 +02:00
Oleksii Aleshchenko
41ad598b79 add lab1 2023-03-09 16:01:01 +02:00
Oleksii Aleshchenko
13e1a61ad9 update Main with example for difference & and && 2023-03-02 16:07:34 +02:00
Oleksii Aleshchenko
f692ae7588 update polymorphism example 2023-03-02 15:48:38 +02:00
Oleksii Aleshchenko
429bcc7b3d add polymorphism example 2023-03-02 15:26:42 +02:00
Oleksii Aleshchenko
4b159fa22b update inheritance example 2023-03-02 14:41:44 +02:00
Oleksii Aleshchenko
2880b770f7 add inheritance example 2023-02-23 16:04:53 +02:00
25 changed files with 358 additions and 166 deletions

2
.gitignore vendored
View File

@@ -1,2 +0,0 @@
# Project exclude paths
/out/

8
.idea/.gitignore generated vendored
View File

@@ -1,8 +0,0 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

6
.idea/misc.xml generated
View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_18" default="true" project-jdk-name="openjdk-18" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

8
.idea/modules.xml generated
View File

@@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/OOP_IO-2x_2023.iml" filepath="$PROJECT_DIR$/OOP_IO-2x_2023.iml" />
</modules>
</component>
</project>

124
.idea/uiDesigner.xml generated
View File

@@ -1,124 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Palette2">
<group name="Swing">
<item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
</item>
<item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
</item>
<item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.svg" removable="false" auto-create-binding="false" can-attach-label="true">
<default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
</item>
<item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
<initial-values>
<property name="text" value="Button" />
</initial-values>
</item>
<item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="RadioButton" />
</initial-values>
</item>
<item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="CheckBox" />
</initial-values>
</item>
<item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
<initial-values>
<property name="text" value="Label" />
</initial-values>
</item>
<item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
</item>
<item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
</item>
<item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
<preferred-size width="-1" height="20" />
</default-constraints>
</item>
<item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
</item>
<item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
</item>
</group>
</component>
</project>

6
.idea/vcs.xml generated
View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

32
Lab2/Program.cs Normal file
View File

@@ -0,0 +1,32 @@
using System;
public class Laba2
{
public static void Main(string[] args)
{
const int a = 2;
int[][] b = new[]
{
new int[] { 1, 2, 8 },
new int[] { 3, 4, 5 },
new int[] { 6, 7, 9 }
};
calculation(b, a);
}
private static int[][] calculation(int[][] b, int a)
{
int[][]c = new int[b.Length][b[0].Length]; //недопустимий специфікатор рангу: вимагається "," або "]";
for (int i = 0; i < b.Length; i++)
{
c[i] = new int[b[i].Length];
for (int j = 0; j < b[i].Length; j++)
{
c[i][j] = b[i][j] * a;
}
}
return c;
}
}

33
Lab3/Lab3/Lab3/Program.cs Normal file
View File

@@ -0,0 +1,33 @@
using System;
using System.Collections.Generic;
class Lab3
{
public static void Main(string[] args)
{
string text = "Вухатий великий синiй слон. Яблуко в саду. Зелене яблуко? Груша. Жовта слива висить у саду!";
Console.WriteLine(text );
// розділяємо текст на окремі речення
string[] textSplit = text.Split(new[] { '.', '?', '!' }, StringSplitOptions.RemoveEmptyEntries);
// обчислюємо кількість слів у кожному реченні та створюємо масив з кількістю слів у реченнях
int[] amountOfWords = new int[textSplit.Length];
for (int i = 0; i < textSplit.Length; i++)
{
string[] words = textSplit[i].Trim().Split(' ');
amountOfWords[i] = words.Length;
}
// створюємо Dictionary, де ключ - кількість слів у реченні, а значення - речення
Dictionary<int, string> sentenceDictionary = new Dictionary<int, string>();
for (int i = 0; i < textSplit.Length; i++)
{
sentenceDictionary.Add(amountOfWords[i], textSplit[i]);
}
var sortedDict = sentenceDictionary.OrderBy(x => x.Key).ToDictionary(x => x.Value, x => x.Key);
Console.WriteLine(String.Join(";", sortedDict.Keys));
}
}

View File

@@ -1,11 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

58
src/Lab1.java Normal file
View File

@@ -0,0 +1,58 @@
public class Lab1 {
public static void main(String[] args) {
// char c = 'a' + '1';
char c = 97;
// char c = '1';
System.out.println(c);
System.out.println((int) c);
c++;
System.out.println(c);
System.out.println((int) c);
System.out.println((double)'1'/'3');
// System.out.println( (double) 0 / 0 );
// System.out.println( Math.sqrt(-1) );
double s = 0;
/*for (int i = 1; i <= 3; i++) { // 1) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> i = 1, 2) <20><><EFBFBD><EFBFBD> <20> <= 3, 3) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䳿 <20> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>,
System.out.println(i); // 4) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><> 1, 5) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> 2
// s = s + i;
s += i;
}*/
/*int[] array = new int[2];
for (int i = 0; i < array.length; i++) {
}*/
final int A = -3;
final int B = 0;
final int N = 2;
final int M = 2;
final int C = 1;
// boolean wasDivisionByZero = false;
// todo char
// todo[clear code] think about avoiding brackets
if ((A <= -C && -C <= N) || (B <= 0 && 0 <= M)) {
System.out.println("Division by zero!");
return;
}
/*myLabel:*/for (int i = A; i <= N /*&& !wasDivisionByZero*/; i++) {
/*if (i + C == 0) { // todo optimize
System.out.println("Division by zero!");
wasDivisionByZero = true;
break; //todo flag vs return;
}*/
for (int j = B; j <= M; j++) {
/*if (j == 0) {
System.out.println("Division by zero!");
return;
// wasDivisionByZero = true;
// break myLabel;
}*/
s += (double) (i / j) / (i + C);
}
}
// if (!wasDivisionByZero) {
System.out.println("s = " + s);
// }
}
}

26
src/Lab2.java Normal file
View File

@@ -0,0 +1,26 @@
public class Lab2 {
public static void main(String[] args) {
int[] array = {1, 2, 3};
/*for (int i = 0; i < array.length; i++) {
if (i % 2 == 0) {
System.out.println("!" + array[i]);
} else {
System.out.println("?" + array[i]);
}
}*/
for (int i = 0; i < array.length; i+=2) {
System.out.println("!" + array[i]);
}
for (int i = 1; i < array.length; i+=2) {
System.out.println("?" + array[i]);
}
// зубчасті матриці
int[][] matrix = {
{1, 2},
{3}
};
}
}

View File

@@ -1,8 +1,35 @@
public class Main { public class Main {
public static void main(String[] args) { public static void main(String[] args) {
System.out.println(args[0]); System.out.println(args[2]);
System.out.println("Hello world!"); System.out.println("Hello world!");
// System.out.println(1); // System.out.println(1);
int a = 1;
int b = 2;
int c = 1;
int d = 1;
System.out.println(2&1);
System.out.println(2|1);
int aa = 2;
/*if (aa) {
}*/
// System.out.println("a"&"b");
System.out.println('a'&'b');
if ((a > b) & MyBooleanMethod()) {
System.out.println("?????????????????????????");
}
}
static boolean MyBooleanMethod() {
System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
return true;
} }
void myFunction() { void myFunction() {

View File

@@ -0,0 +1,9 @@
package encapsulationInheritancePolymorphism.inheritance;
public class ElectricEngine extends Engine {
private String batteryType;
/*private class Engine {
private int power;
}*/
}

View File

@@ -0,0 +1,5 @@
package encapsulationInheritancePolymorphism.inheritance;
public class Engine {
private int power;
}

View File

@@ -0,0 +1,5 @@
package encapsulationInheritancePolymorphism.inheritance;
public class FuelEngine extends Engine {
private String fuelType;
}

View File

@@ -0,0 +1,8 @@
package encapsulationInheritancePolymorphism.inheritance;
public class Main {
public static void main(String[] args) {
ElectricEngine electricEngine = new ElectricEngine(); // створення нового об'єкту (екземпляру) класу ElectricEngine
FuelEngine fuelEngine = new FuelEngine();
}
}

View File

@@ -0,0 +1,14 @@
package encapsulationInheritancePolymorphism.polymorphism;
public class ElectricEngine extends Engine {
private String batteryType;
@Override
public int getPower() {
return 20;
}
/*private class Engine {
private int power;
}*/
}

View File

@@ -0,0 +1,9 @@
package encapsulationInheritancePolymorphism.polymorphism;
public class Engine {
private int power;
public int getPower() {
return power;
}
}

View File

@@ -0,0 +1,10 @@
package encapsulationInheritancePolymorphism.polymorphism;
public class FuelEngine extends Engine {
private String fuelType;
@Override
public int getPower() {
return 50;
}
}

View File

@@ -0,0 +1,38 @@
package encapsulationInheritancePolymorphism.polymorphism;
/*import encapsulationInheritancePolymorphism.inheritance.ElectricEngine;
import encapsulationInheritancePolymorphism.inheritance.FuelEngine;*/
public class Main {
public static void main(String[] args) {
/*encapsulationInheritancePolymorphism.inheritance.*/ElectricEngine electricEngine = new ElectricEngine(); // створення нового об'єкту (екземпляру) класу ElectricEngine
/*encapsulationInheritancePolymorphism.inheritance.*/FuelEngine fuelEngine = new FuelEngine();
Engine engine1 = fuelEngine;
Engine[] engines = {
electricEngine,
fuelEngine
};
for (Engine engine : engines) {
System.out.println(engine.getPower());
}
/*for (int i = 0; i < engines.length; i++) {
System.out.println(engines[i].getPower());
}*/
// +
int a = 1;
int b = 1;
int c = a + b;
System.out.println(c);
String sA = "1";
String sB = "1";
String sC = sA + sB;
System.out.println(sC);
}
}

View File

@@ -0,0 +1,19 @@
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
public class ElectricEngine extends Engine {
private String batteryType;
private int chargeLevel = 9;
private int criticalChargeLevel = 10;
private float coefficientCriticalPowerCut = 0.1f;
@Override
public int getPower() {
return chargeLevel > criticalChargeLevel
? super.getPower()
: (int) (super.getPower() * coefficientCriticalPowerCut);
}
/*private class Engine {
private int power;
}*/
}

View File

@@ -0,0 +1,9 @@
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
public class Engine {
private int power = 100;
public int getPower() {
return power;
}
}

View File

@@ -0,0 +1,10 @@
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
public class FuelEngine extends Engine {
private String fuelType;
/*public int getPower() {
return 50;
}*/
}

View File

@@ -0,0 +1,28 @@
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
/*import encapsulationInheritancePolymorphism.inheritance.ElectricEngine;
import encapsulationInheritancePolymorphism.inheritance.FuelEngine;*/
public class Main {
public static void main(String[] args) {
/*encapsulationInheritancePolymorphism.inheritance.*/
ElectricEngine electricEngine = new ElectricEngine(); // створення нового об'єкту (екземпляру) класу ElectricEngine
/*encapsulationInheritancePolymorphism.inheritance.*/
FuelEngine fuelEngine = new FuelEngine();
Engine engine1 = fuelEngine;
Engine[] engines = {
electricEngine,
fuelEngine
};
for (Engine engine : engines) {
System.out.println(engine.getPower());
}
/*for (int i = 0; i < engines.length; i++) {
System.out.println(engines[i].getPower());
}*/
}
}

View File

@@ -0,0 +1,17 @@
package encapsulationInheritancePolymorphism.polymorphism.overload;
public class MyClassForOverloadExample {
void myMethod(int a) {
System.out.println("Integer: " + a);
}
void myMethod(double a) {
System.out.println("Double: " + a);
}
public static void main(String[] args) {
MyClassForOverloadExample overload = new MyClassForOverloadExample();
overload.myMethod(1);
overload.myMethod(0.1);
}
}